Skip to content

Added Template Apache Superset #908

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added templates/apache-superset/assets/logo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added templates/apache-superset/assets/screenshot.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
64 changes: 64 additions & 0 deletions templates/apache-superset/index.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
import { Output, Services, randomPassword, randomString } from "~templates-utils";
import { Input } from "./meta";

export function generate(input: Input): Output {
const services: Services = [];
const dbPassword = randomPassword();
const redisPassword = randomPassword();
const secretKey = randomString(32);

services.push({
type: "app",
data: {
serviceName: input.appServiceName,
source: {
type: "image",
image: input.appServiceImage,
},
domains: [
{
host: "$(EASYPANEL_DOMAIN)",
port: 8088,
},
],
env: [
`SUPERSET_SECRET_KEY=${secretKey}`,
`POSTGRES_DB=$(PROJECT_NAME)`,
`POSTGRES_USER=postgres`,
`POSTGRES_PASSWORD=${dbPassword}`,
`POSTGRES_HOST=$(PROJECT_NAME)_${input.appServiceName}-db`,
`POSTGRES_PORT=5432`,
`REDIS_HOST=$(PROJECT_NAME)_${input.appServiceName}-redis`,
`REDIS_PORT=6379`,
`REDIS_PASSWORD=${redisPassword}`,
`SUPERSET_LOAD_EXAMPLES=yes`,
`SUPERSET_ENABLE_PROXY_FIX=true`,
].join("\n"),
mounts: [
{
type: "volume",
name: "superset",
mountPath: "/app/superset_home",
},
],
},
});

services.push({
type: "postgres",
data: {
serviceName: `${input.appServiceName}-db`,
password: dbPassword,
},
});

services.push({
type: "redis",
data: {
serviceName: `${input.appServiceName}-redis`,
password: redisPassword,
},
});

return { services };
}
58 changes: 58 additions & 0 deletions templates/apache-superset/meta.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: Apache Superset
description: Apache Superset is a modern, enterprise-ready business intelligence web application. It's fast, lightweight, intuitive, and loaded with options that make it easy for users of all skill sets to explore and visualize their data, from simple line charts to highly detailed geospatial charts.
instructions: Migrate database with "superset db upgrade", adjust roles and permissions with "superset init", create admin user with "superset fab create-admin". Follow the guide for further references.
changeLog:
- date: 2024-04-22
description: First Release
links:
- label: Github
url: https://github.com/apache/superset
- label: Documentation
url: https://superset.apache.org/docs/intro
- label: Guide
url: https://www.restack.io/docs/superset-knowledge-apache-superset-default-login
contributors:
- name: Ahson Shaikh
url: https://github.com/Ahson-Shaikh
schema:
type: object
required:
- appServiceName
- appServiceImage
properties:
appServiceName:
type: string
title: App Service Name
default: apache-superset
appServiceImage:
type: string
title: App Service Image
default: apache/superset:ae48dba
benefits:
- title: Data Visualization
description: Create beautiful, interactive visualizations of your data.
- title: SQL Editor
description: Powerful SQL editor with syntax highlighting and autocomplete.
- title: Dashboard Creation
description: Create and share interactive dashboards with your team.
- title: Data Exploration
description: Explore and analyze your data with an intuitive interface.
- title: Enterprise Ready
description: Scalable and secure solution for business intelligence.
features:
- title: Rich Visualizations
description: Wide variety of visualization types to represent your data.
- title: SQL Lab
description: Advanced SQL editor for data exploration and preparation.
- title: Dashboard Builder
description: Drag-and-drop interface for creating interactive dashboards.
- title: Security
description: Role-based access control and authentication options.
- title: Data Source Integration
description: Connect to various data sources including SQL databases.
tags:
- Business Intelligence
- Data Visualization
- Analytics
- Dashboard
- SQL