docker安裝superset及使用

1、獲取docker鏡像

[root]# docker search superset
NAME                           DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
amancevice/superset            Superset on Debian+Python3                      239                                     [OK]
tylerfowler/superset           An extendable Docker image for Airbnb's Supe…   15                                      
preset/superset                Apache Superset (incubating) is a modern, en…   7                                       
crobox/superset                Superset + Clickhouse docker image              3                                       [OK]
maedamikio/superset                                                            3                                       
tyyzqmf/superset               根據amancevice/superset修改的鏡像 主要解決su…              2                                       [OK]
ganshanshan/superset_tddv      tddv superset                                   2                                       [OK]
huksley/superset               AirBnB Superset 0.28 with MySQL driver          2                                       [OK]
dailyhotel/superset            Dockerized Superset                             2                                       [OK]
starburstdata/superset         Apache Superset docker container                1                                       [OK]
pietrocannalire/superset       Superset Image                                  1                                       [OK]
muicoder/superset              Superset is a data exploration platform desi…   1                                       [OK]
noenv/superset                 Superset Docker Image                           1                                       [OK]
burtdatacloud/superset-mysql   Superset MySQL                                  0                                       
mmontagna/superset-docker      superset-docker                                 0                                       
nis365/superset                This docker image is built from amancevice/s…   0                                       
ganshanshan/superset1          superset1                                       0                                       [OK]
gavrikov/superset                                                              0                                       
dockerdegbert/superset                                                         0                                       
chethanuk/superset                                                             0                                       
wenchma/superset               Own superset build                              0                                       [OK]
lrosenman/superset             superset                                        0                                       
harisekhon/superset            Superset open source analytics UI by AirBNB     0                                       [OK]
tddv/superset                  Superset is come from airbub superset open s…   0                                       [OK]
peertopark/superset            Peer to Park Superset                           0                                       
[root]# docker pull amancevice/superset
Using default tag: latest
latest: Pulling from amancevice/superset
Digest: sha256:1f7e88850066141a60feac844834deeee25fe0d8ca8e612144e4c83ca0648e84
Status: Image is up to date for amancevice/superset:latest
docker.io/amancevice/superset:latest

查看鏡像

[root]# docker images
REPOSITORY                                                      TAG                 IMAGE ID            CREATED             SIZE
redis                                                           latest              36304d3b4540        4 days ago          104MB
amancevice/superset                                             latest              2b49a84a0360        4 weeks ago         2.01GB

2、安裝

#創建掛載目錄
>  mkdir -p /opt/docker/superset/conf & mkdir -p /opt/docker/superset/data
#啓動
>  docker run --name superset -u 0 -d -p 8088:8088 -v /opt/docker/superset/conf:/etc/superset -v /opt/docker/superset/data:/var/lib/superset amancevice/superset
#查看啓動容器
> docker ps
CONTAINER ID        IMAGE                        COMMAND                  CREATED             STATUS                 PORTS                    NAMES
84c729a89cd1        amancevice/superset:latest   "gunicorn superset.a…"   4 days ago          Up 4 hours (healthy)   0.0.0.0:8088->8088/tcp   superset
#用戶初始化
>docker exec -it superset superset-init

修改配置文件

>vim /opt/docker/superset/conf/superset_config.py
#---------------------------------------------------------
# Superset specific config
#---------------------------------------------------------
ROW_LIMIT = 5000

SUPERSET_WEBSERVER_PORT = 8088
#---------------------------------------------------------

#---------------------------------------------------------
# Flask App Builder configuration
#---------------------------------------------------------
# Your App secret key
SECRET_KEY = '\2\1thisismyscretkey\1\2\e\y\y\h'

# The SQLAlchemy connection string to your database backend
# This connection defines the path to the database that stores your
# superset metadata (slices, connections, tables, dashboards, ...).
# Note that the connection information to connect to the datasources
# you want to explore are managed directly in the web UI
SQLALCHEMY_DATABASE_URI = 'sqlite:////var/lib/superset/superset.db'

# Flask-WTF flag for CSRF
WTF_CSRF_ENABLED = True
# Add endpoints that need to be exempt from CSRF protection
WTF_CSRF_EXEMPT_LIST = []
# A CSRF token that expires in 1 year
WTF_CSRF_TIME_LIMIT = 60 * 60 * 24 * 365

# Set this API key to enable Mapbox visualizations
MAPBOX_API_KEY = ''

重啓

>docker restart superset 
>docker exec -it superset superset-init

3、初始化設置

# 創建用戶名和密碼
> docker exec -it -u root 84c729a89cd1 fabmanager create-admin --app superset

# 初始化數據庫
> docker exec -it 84c729a89cd1 superset db upgrade

# 導入示例數據
> docker exec -it 84c729a89cd1 superset load_examples

# 創建默認角色和權限
> docker exec -it 84c729a89cd1 superset init

# 啓動服務
> docker exec -it 84c729a89cd1 superset runserver

4、登錄

訪問地址:http://ip:8088/

漢化

5、配置數據庫

 

6、表配置

 

 

保存之後回到 table 頁,編輯剛纔添加的 table,切換到列列表視圖,可以看到 table 中包含的所有的列:

6.1 探索數據

在 table 頁直接點擊 user,進入 table explore 頁:

選擇需要的圖表類型

查詢表類型展示

 

查看sql

保存圖表

6.2 聯表查詢

Superset不能直接使用聯合查詢,只能從單個表查找數據。但是它提供的視圖的概念,可以編寫視圖SQL,最終在視圖上執行單表查詢操作。視圖的配置見下圖:

sql示例

SELECT
	u.id,
	u.NAME,
	u.age,
	u.points,
	u.STATUS,
	u.create_time,
	u.update_time,
	uc.NO 
FROM
	user u,
	user_class uc 
WHERE
	u.id = uc.user_id

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章