Docker 部署数据可视化 Superset 3.0.0 深度汉化并配置元数据存储为 Postgres
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的更多相关文章
- Axure 7.0 正式版 + 汉化包 安装
详情如下: Axure 7.0 正式版终于发布了,现在提供简体中文版给大家使用. Axure 7.0 正式版: 链接: http://pan.baidu.com/s/1kV4OJ47 提取密码: be ...
- Windows+Atlassian-Jira-6.0.4+MySql5.0安装破解汉化
Windows+Atlassian-Jira-6.0.4+MySql5.0安装破解汉化 一:整理的安装程序 例如以下图: 文件太大.上传不到csdn上.有须要的联系. 新增的百度云盘下载:链接: ...
- UltimateDefrag磁盘碎片整理软件 v3.0.100.19汉化版
软件名称:UltimateDefrag磁盘碎片整理软件 v3.0.100.19汉化版软件类别:汉化软件运行环境:Windows软件语言:简体中文授权方式:免费版软件大小:3.25 MB软件等级:整理时 ...
- Web前端开发神器--WebStorm(JavaScript 开发工具) 8.0.3 中文汉化破解版
WebStorm(JavaScript 开发工具) 8.0.3 中文汉化破解版 http://www.jb51.net/softs/171905.html WebStorm 是jetbrains公司旗 ...
- Bulk Rename Utility 3.0 + x64 中文汉化版
Bulk Rename Utility 3.0 + x64 中文汉化版由大眼仔旭(www.dayanzai.me)汉化发布.当发现做一件事情,原本用工具或软件进行批量处理也能达到相同效果,可却花了数倍 ...
- Axure5.1.0.1699 RP汉化版
Axure是一款产品原型(Prototype)设计软件,可通过这个软件编辑一些常见的事件和在特点条件下才会触发的情况,可以快速的生成HTML Demo页面. 使用Axure的用户很多,据淘宝UED消息 ...
- 【MySQL】MySQL Workbench 8.0 CE 界面汉化
汉化前: 找到这个文件: 打开文件,复制下面这段替换进去保存,重新打开软件即可:(*改之前备份一下) <?xml version="1.0"?> <data> ...
- zend studio 13.0.0 安装破解汉化
zend studio 13安装破解汉化步骤 官网原版下载 http://downloads.zend.com/studio-eclipse/13.0.0/ZendStudio-13.0.0-win3 ...
- Axure7.0 以及 中文汉化语言包下载 axure汉化包
支持 Axure RP Pro 正式版 当前最新版本 7.0.0.3184 不兼容6.5及以下版本! Axure7.0 下载地址:http://pan.baidu.com/s/1dEuR8YX Axu ...
- Activiti6.0流程编辑器汉化教程(en.json文件汉化)
{ "GENERAL": { "MAIN-TITLE": "Activiti", "ERROR": { "GE ...
随机推荐
- OOOPS:零样本实现360度开放全景分割,已开源 | ECCV'24
全景图像捕捉360°的视场(FoV),包含了对场景理解至关重要的全向空间信息.然而,获取足够的训练用密集标注全景图不仅成本高昂,而且在封闭词汇设置下训练模型时也受到应用限制.为了解决这个问题,论文定义 ...
- 4.flask 源码解析:上下文
目录 一.flask 源码解析:上下文 1.1 上下文(application context 和 request context) 1.2 Update: 为什么要用 LocalProxy Flas ...
- GE反射内存卡的指标和型号
产品特性: • 1路发送,1路接收: • 光纤高速网络2.12GHz: • 最大256个节点: • 光纤协议不占用CPU资源: • 多模光纤节点距离300米:单模光纤节点距离10千米: • 板载128 ...
- FFmpeg开发笔记(五十八)把32位采样的MP3转换为16位的PCM音频
<FFmpeg开发实战:从零基础到短视频上线>一书的"5.1.2 把音频流保存为PCM文件"介绍了如何把媒体文件中的音频流转存为原始的PCM音频,在样例代码的转存过 ...
- 黑客工具:Amass – 寻找子域
安装 所有信息都可以在 OWASP Amass 项目的 Github 页面上找到:https://github.com/OWASP/Amass.我们将一起完成安装过程,以便更快地部署. 转到发布页面并 ...
- Python-提高-2
阅读目录 1.多继承以及MRO顺序 2.再论静态方法和类方法 3.property属性-讲解 4.property属性-应用 5.魔法属性 6.面向对象设计 7.with与"上下文管理器&q ...
- dotnet6.0安装
解压到目录 sudo mkdir -p /usr/share/dotnet && sudo tar zxf dotnet-sdk-6.0.423-linux-x64.tar.gz -C ...
- ABC365(D,E)
ABC365(D,E) D - AtCoder Janken 3 石头剪刀布,给出对手的出招,问在保证不败的情况下最多能赢多少回 记 \(f_i,{0/1/2}\) 表示第 \(i\) 局出石头/剪刀 ...
- 4-11.3 C++中的显式类转换
目录 static_cast 1.用来改变基本类型:一般是高精度转低精度 2.恢复void* 指针类型 const_cast 用来去除底层const(low-level const) reinterp ...
- 关于MNN的OPENCL和Vulkan支持
关于MNN框架推理的时候,通过调用库当中结构体的内容,可以切换选择创建Session的具体配置.关于结构的描述见官方文档: 官方文档--创建Session CPU是编译的时候默认选择的配置方式,通过文 ...