基于docker搭建superset可视化分析平台
2017-10-17 本文已影响2420人
ccccfys
对于可视化分析方面,因为自己tableau已经用的很熟了,想增加对superset的认识和熟练程度,想搭建一个superset可视化分析平台,以便于自己在平时工作时使用。查看了superset的官方文档,发现superset必须使用python2.7或者python3.4,但我平时工作使用的是python3.6,存在版本的冲突,直接在自己电脑上安装比较麻烦。刚好对docker容器技术有一些了解,但没实践过,所以周末花了一点时间研究了一下如何基于docker来搭建一个可用于实际工作的superset可视化分析环境。如果你对此也感兴趣,可参考如下文档在自己的电脑上进行安装。
环境搭建好以后
- 在docker容器里面运行superset应用,将端口映射到宿主机,这样可在宿主机中通过浏览器访问docker中开启的superset应用。
- 将宿主机中存储sqlite数据库文件的目录映射给docker容器内superset应用的数据目录,这样只需要将数据存储到宿主机指定目录即可,方便进行分析。
我在windows和macOS上都进行了测试,本文分享的内容是针对Windows来写的.
1. windows10专业版,确认电脑的CPU支持虚拟化,且开启windows的hyper-v虚拟化功能
- 家庭版的windows没有hyper-v虚拟化功能,不能够运行docker
- 专业版的windows要确保处理器支持虚拟化技术并且已开启虚拟化,如下图所示显示虚拟化已启用才可以。
2. 安装docker的windows版本
网址:https://download.docker.com/win/stable/Docker%20for%20Windows%20Installer.exe
下载完成后,直接双击安装即可。安装完成后,配置一个国内的docker镜像,这样在拉取仓库时的速度更快。我使用的是daocloud.io提供镜像加速服务,是免费的,只需要注册一个账号即可。
注册后点击加速器,就会自动给你生成一个链接
Snip20171017_2.png6.停止与开启superset服务
- 列出在运行的容器
docker ps
C:\Users\richstone> docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c2fc56d845ea amancevice/superset:0.20.0 "superset runserver" 16 minutes ago Up 16 minutes (healthy) 0.0.0.0:8088->8
088/tcp ecstatic_galileo
- 找到运行superset的容器ID,停止
docker stop c2fc56d845ea
- 列出运行过的容器的ID,找到运行superset的容器ID
docker ps -a
- 开启superset服务
docker start c2fc56d845ea
7.向宿主机的E:/Data/sqlit
文件导入sqlite数据库文件
打开http://localhost:8088
登录你的账号名与密码,即可对数据库文件中的表进行查询与可视化分析。
Windows上运行docker很容易出现各种各样的问题,所以推荐Linux系统或者macOS系统。