docker单机搭建superset
2020-07-16 本文已影响0人
zishen
superset镜像
- 1.构建镜像
pip.conf 用于替换pip包管理的阿里源,
build.sh脚本用于构建superset运行的镜像环境
sh build.sh
- 2.启动容器
sh run_docker.sh
- 3.配置superset
config.py文件为superset的配置文件,元数据库/分布式任务队列的配置分别在其中的101行/408行.
sh config_superset.sh
- 4.运行superset
sh run_superset.sh
superset执行流程
默认情况下,元数据的管理、broker/backend使用的均为sqlite。下图中为推荐配置。
一条请求的生命周期
superset图表iframe代码外嵌
- 前提条件
1.config.py中的 WTF_CSRF_ENABLED = False
2.config.py中的 ENABLE_CORS = True
3.config.py中的 SUPERSET_WEBSERVER_DOMAINS = ['*'] #包含部署域名 -
配置public角色权限
iframe嵌入代码中对应图表对应的数据源(pg中的一张表)的权限要暴露到public角色中。例如下面配置了es数据源中hznz_apache_assece这张表的权限。
public权限 - 外嵌示例:
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<title>iframe</title>
</head>
<body>
<div style="height: 609px;width: 281.25px;">
<iframe
width="600"
height="400"
seamless
frameBorder="0"
scrolling="no"
src="http://192.168.2.112:8086/superset/explore/?form_data=%7B%22datasource%22%3A%221__table%22%2C%22viz_type%22%3A%22pie%22%2C%22slice_id%22%3A1%2C%22url_params%22%3A%7B%7D%2C%22granularity_sqla%22%3A%22time%22%2C%22time_grain_sqla%22%3Anull%2C%22time_range%22%3A%22Last+year%22%2C%22metric%22%3A%22count%22%2C%22adhoc_filters%22%3A%5B%5D%2C%22groupby%22%3A%5B%22ip%22%5D%2C%22row_limit%22%3A25%2C%22pie_label_type%22%3A%22key%22%2C%22number_format%22%3A%22SMART_NUMBER%22%2C%22donut%22%3Afalse%2C%22show_legend%22%3Atrue%2C%22show_labels%22%3Atrue%2C%22labels_outside%22%3Atrue%2C%22color_scheme%22%3A%22bnbColors%22%2C%22label_colors%22%3A%7B%7D%7D&standalone=true&height=400"
>
</iframe>
<!-- <iframe src="http://dbr.deepdraw.cn/web/monitor/"
style="height 100%; width: 100%;"
frameborder=0
</iframe> -->
</div>
</body>
</html>
示例