1.Helm 查询一下SuperSet Chart
helm search repo superset
2.推荐下载指定版本的Chart 这样方便部署不同的环境不同的时间不会出现版本偏差
helm pull appstore/superset --version 0.10.6
3.解压Chart压缩包
tar -zxvf superset-0.10.6.tgz
4.postgresql 需要配置storageClass(这里大家根据自己的情况决定 nfs-client 是我自己创建的存储类)
进入 superset/charts/postgresql 文件夹里 修改values.yaml
5.部署Chart
helm install superset superset/
到这里你是不是觉得就完了 (没错如果你不用中文 也不用Oracle)
等你登录上去就发现 为啥是英文界面 !!!为啥Oracle数据库不支持!!!
5.设置中文比较简单
进入 superset/templates 文件夹 修改_helpers.tpl
添加
BABEL_DEFAULT_LOCALE = "zh"
LANGUAGES = {
"zh": {"flag": "cn", "name": "简体中文"},
"en": {"flag": "us", "name": "English"},
}
6.通过构建自己的镜像包含Oracle数据库
贴一下Dockerfile
FROM apachesuperset.docker.scarf.sh/apache/superset:2.1.0
USER root
ADD ./instantclient-basic-linux.x64-12.2.0.1.0.zip /tmp/instantclient-basic-linux.x64-12.2.0.1.0.zip
ADD ./instantclient-sdk-linux.x64-12.2.0.1.0.zip /tmp/instantclient-sdk-linux.x64-12.2.0.1.0.zip
ADD ./instantclient-sqlplus-linux.x64-12.2.0.1.0.zip /tmp/instantclient-sqlplus-linux.x64-12.2.0.1.0.zip
RUN apt-get update -y
RUN apt-get install -y unzip
RUN apt-get install libaio1
RUN unzip /tmp/instantclient-basic-linux.x64-12.2.0.1.0.zip -d /usr/local/
RUN unzip /tmp/instantclient-sdk-linux.x64-12.2.0.1.0.zip -d /usr/local/
RUN unzip /tmp/instantclient-sqlplus-linux.x64-12.2.0.1.0.zip -d /usr/local/
RUN ln -s /usr/local/instantclient_12_2 /usr/local/instantclient
RUN ln -s /usr/local/instantclient/libclntsh.so.12.1 /usr/local/instantclient/libclntsh.so
RUN ln -s /usr/local/instantclient/sqlplus /usr/bin/sqlplus
RUN apt-get install libaio-dev -y
RUN apt-get clean -y
ENV ORACLE_HOME=/usr/local/instantclient
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/instantclient
RUN pip install cx_Oracle==5.3
看内容大家应该也知道了 Dockerfile文件夹里需要下载Oracle连接
构建好自己的镜像后 修改superset文件夹里的values.yaml的镜像地址
7.Oracle 查询中文乱码问题
进入 superset/templates 文件夹 修改secret-env.yaml
NLS_LANG: AMERICAN_CHINA.AL32UTF8