services:
postgres:
image: postgres:14.10
container_name: postgres
hostname: postgres
environment:
POSTGRES_USER: superset
POSTGRES_PASSWORD: superset
POSTGRES_DB: superset
ports:
- "2432:5432"
volumes:
- /home/app/data/postgres/data:/var/lib/postgresql/data
network_mode: "host"
superset:
image: superset-pg:3.0.2
container_name: superset
hostname: superset
restart: always
ports:
- 28088:8088
environment:
- TZ=Asia/Shanghai
# sqlite 存储元数据的数据持久化
#volumes:
# - ./superset:~/.superset docker-compose -f docker-compose.yml up -d docker exec -it superset superset fab create-admin \
--username admin \
--firstname Superset \
--lastname Admin \
--email admin@superset.com \
--password admin docker exec -it superset superset db upgrade docker exec -it superset superset init

Superset 官方提供的 Docker 镜像在 3.0.0 版本下不能做到开箱即用,需要一些设置

拉取原始镜像
docker pull apache/superset:3.0.0
配置 superset_config.py
superset_config.py 会覆盖掉 config.py 里的变量,无需配置 config.py

创建一个 superset_config.py 文件添加以下内容

SECRET_KEY = 'superset'
SQLALCHEMY_DATABASE_URI = 'postgresql://superset:superset@postgres/superset'
WTF_CSRF_ENABLED = False
TALISMAN_ENABLED = False
BABEL_DEFAULT_LOCALE = "zh"
LANGUAGES = {
"zh": {"flag": "cn", "name": "简体中文"},
"en": {"flag": "us", "name": "English"},
}
SECRET_KEY:官方说明从2.1.0版本开始必须配置才能启动superset
SQLALCHEMY_DATABASE_URI:superset 的元数据库,默认使用sqlite,并存储在~/.superset/superset.db,也可以指定位置存储 'sqlite:////path/to/superset.db'

postgres格式:postgresql://<UserName>:<DBPassword>@<Database Host>/<Database Name>

mysql格式:mysql://<UserName>:<DBPassword>@<Database Host>/<Database Name>

元数据库支持 sqlite,mysql,postgres 三种数据库

测试 postgres16 版本也支持
数据库密码不要包含@,测试过各种办法无效,官方文档里的方法虽能连接上数据库,但是后续python脚本引用变量时报错,获取不到,期待python大佬解答,config文件两个月前更新,3.0.0版本发布于两周前,文件还未更新

建议数据库使用 UTF-8 编码,避免乱码

WTF_CSRF_ENABLED = False:关于安全的选项,关闭
TALISMAN_ENABLED = False:关于安全的选项,关闭
不关闭安全选项会导致URL地址不匹配无法登陆superset,测试目前只有3.0.0版本需要
BABEL_DEFAULT_LOCALE:默认的superset语言,会影响标题栏
LANGUAGES:开启语言选择菜单,不会影响标题栏和部分选项,汉化不全,开启英文方便理解,也支持其他很多语言,name后的字符可以修改,是浏览器上菜单的显示项

LANGUAGES = {
"en": {"flag": "us", "name": "English"},
"es": {"flag": "es", "name": "Spanish"},
"it": {"flag": "it", "name": "Italian"},
"fr": {"flag": "fr", "name": "French"},
"zh": {"flag": "cn", "name": "Chinese"},
"ja": {"flag": "jp", "name": "Japanese"},
"de": {"flag": "de", "name": "German"},
"pt": {"flag": "pt", "name": "Portuguese"},
"pt_BR": {"flag": "br", "name": "Brazilian Portuguese"},
"ru": {"flag": "ru", "name": "Russian"},
"ko": {"flag": "kr", "name": "Korean"},
"sk": {"flag": "sk", "name": "Slovak"},
"sl": {"flag": "si", "name": "Slovenian"},
"nl": {"flag": "nl", "name": "Dutch"},
}
配置 Dockerfile
superset 官方 Docker 镜像不带除 sqlite 以外任何数据库驱动,以最小化镜像体积,配置postgres 为元数据库或者连接其他数据库需要为容器安装相应驱动

FROM apache/superset:3.0.0
COPY superset_config.py /app/pythonpath
USER root
RUN pip install psycopg2 pyhive &&\
pybabel compile -d /app/superset/translations; exit 0
USER superset
psycopg2:postgres数据库的python驱动
pyhive:hive的python驱动
pybabel:superset下已经有翻译的文件,只是没有编译,编译目录下的所有语言的.po文件对应的.mo文件,深度汉化
; exit 0:翻译文件有很多不对的地方导致报错,让 docker 无视报错继续构建

Superset 本身支持非常多的数据库连接,具体可以查看官方文档安装

https://superset.apache.org/docs/databases/installing-database-drivers/

构建镜像
docker build --no-cache -t superset-pg:3.0.0 .
--no-cache:不使用缓存。不指定的话dockerfile中命令无变化的地方将使用缓存,COPY里文件修改的部分不会应用到实际构建中

最后的 “.” 不能省略

配置 docker-compose.yml 启动 Superset
services:
superset:
image: superset-pg:3.0.0
container_name: superset
hostname: superset
restart: always
ports:
- 8080:8088
environment:
- TZ=Asia/Shanghai
# sqlite 存储元数据的数据持久化
#volumes:
# - ./superset:~/.superset
创建超级管理员
docker exec -it superset superset fab create-admin \
--username admin \
--firstname Superset \
--lastname Admin \
--email admin@superset.com \
--password admin
升级数据库(包含一部分初始化)
docker exec -it superset superset db upgrade
初始化 Superset
docker exec -it superset superset init
访问地址:http://ip:8080

一些汉化效果截图

Docker 部署数据可视化 Superset 3.0.0 深度汉化并配置元数据存储为 Postgres的更多相关文章

  1. Axure 7.0 正式版 + 汉化包 安装

    详情如下: Axure 7.0 正式版终于发布了,现在提供简体中文版给大家使用. Axure 7.0 正式版: 链接: http://pan.baidu.com/s/1kV4OJ47 提取密码: be ...

  2. Windows+Atlassian-Jira-6.0.4+MySql5.0安装破解汉化

     Windows+Atlassian-Jira-6.0.4+MySql5.0安装破解汉化 一:整理的安装程序 例如以下图: 文件太大.上传不到csdn上.有须要的联系. 新增的百度云盘下载:链接: ...

  3. UltimateDefrag磁盘碎片整理软件 v3.0.100.19汉化版

    软件名称:UltimateDefrag磁盘碎片整理软件 v3.0.100.19汉化版软件类别:汉化软件运行环境:Windows软件语言:简体中文授权方式:免费版软件大小:3.25 MB软件等级:整理时 ...

  4. Web前端开发神器--WebStorm(JavaScript 开发工具) 8.0.3 中文汉化破解版

    WebStorm(JavaScript 开发工具) 8.0.3 中文汉化破解版 http://www.jb51.net/softs/171905.html WebStorm 是jetbrains公司旗 ...

  5. Bulk Rename Utility 3.0 + x64 中文汉化版

    Bulk Rename Utility 3.0 + x64 中文汉化版由大眼仔旭(www.dayanzai.me)汉化发布.当发现做一件事情,原本用工具或软件进行批量处理也能达到相同效果,可却花了数倍 ...

  6. Axure5.1.0.1699 RP汉化版

    Axure是一款产品原型(Prototype)设计软件,可通过这个软件编辑一些常见的事件和在特点条件下才会触发的情况,可以快速的生成HTML Demo页面. 使用Axure的用户很多,据淘宝UED消息 ...

  7. 【MySQL】MySQL Workbench 8.0 CE 界面汉化

    汉化前: 找到这个文件: 打开文件,复制下面这段替换进去保存,重新打开软件即可:(*改之前备份一下) <?xml version="1.0"?> <data> ...

  8. zend studio 13.0.0 安装破解汉化

    zend studio 13安装破解汉化步骤 官网原版下载 http://downloads.zend.com/studio-eclipse/13.0.0/ZendStudio-13.0.0-win3 ...

  9. Axure7.0 以及 中文汉化语言包下载 axure汉化包

    支持 Axure RP Pro 正式版 当前最新版本 7.0.0.3184 不兼容6.5及以下版本! Axure7.0 下载地址:http://pan.baidu.com/s/1dEuR8YX Axu ...

  10. Activiti6.0流程编辑器汉化教程(en.json文件汉化)

    { "GENERAL": { "MAIN-TITLE": "Activiti", "ERROR": { "GE ...

随机推荐

  1. USB分析仪USB3.2日志分析

    1.简介 USB2.0总线采用轮询模式,即总线事务开始时,都要先发送IN或者OUT令牌包,以通知端点或者查询端点是否准备好.而USB3.2采用了异步通知模式,若端点没有准备好,则主机无需轮询,端点准备 ...

  2. 《An Image Patch is a Wave: Phase-Aware Vision MLP》结构图+个人做的验证实验

    今天阅读了<An Image Patch is a Wave: Phase-Aware Vision MLP>这篇论文,根据代码绘制的它的结构图.如果有错误,还请指正. Wave_MLP_ ...

  3. CNN每层卷积结果视觉展示(3Dircadb肝脏数据为例)

    试着展示了肝脏每层卷积之后的结果.代码如下: import torch import torch.nn as nn import SimpleITK as sitk import numpy as n ...

  4. Python之py9-py9作业检查

    目录结构 代码 import os import datetime name_list = [ '赵嘉豪', '巩景云', '李琦', '潘立府', '胡凯琴', '雷俊', '刘闯', '毛毅智', ...

  5. Nuxt.js 应用中的 restart 事件钩子详解

    title: Nuxt.js 应用中的 restart 事件钩子详解 date: 2024/10/14 updated: 2024/10/14 author: cmdragon excerpt: re ...

  6. 百度ai只能回答怎么关闭

        百度ai只能回答怎么关闭 要关闭‌百度的AI智能回答功能,可以通过以下几种方法实现: 使用广告拦截插件 安装广告拦截插件:如‌AdGuard.‌uBlock Origin等,这些插件可以帮助你 ...

  7. mybatis相关-转义字符串报错-Cause: org.xml.sax.SAXParseException

    mybatis相关-转义字符串报错-Cause: org.xml.sax.SAXParseException 部分报错信息 Caused by: org.springframework.beans.f ...

  8. chcapter 11 熵和信息

    Entropy and information 熵:度量一个物理系统中的态的不确定度. 注意: 文中出现的' 凸性' convexity  和 ' 凹性' concavity 的在不同的教材中可能含义 ...

  9. 2-1 C++内置类型

    目录 2.1.1 算术类型(Arithmetic Types) 概览 分类 整型与浮点型 有符号和无符号 存储 单位转换 常见类型的大小 几点说明 选择 2.1.2 类型转换(Type Convers ...

  10. Docker配置Trojan代理

    1.遇到的问题 在做云计算作业,使用阿里云的ECS服务器尝试使用docker拉取镜像的时候,发现一直无法从仓库拉取,更换了多个镜像源也没有解决问题,于是决定学会去配置linux的代理,记录过程. 2. ...