Centos 中部署 superset 环境

Centos 中部署 superset 环境

linux 环境部署

CentosOS 7.9.2009 版本

  • 镜像拉取
    在 docker 中 docker pull centos:7.9.2009

  • 创建容器
    docker run -itd --name superset --privileged=true -p 33333:33333 centos:7.9.2009 /usr/sbin/init

  • 进入 linux 容器
    docker exec -it superset /bin/bash

执行这个命令之前,最好更换一下镜像源,换成国内源,否则后面部署 python 环境可能会下载失败。
更换阿里源见我的博客https://www.cnblogs.com/bcmm/articles/17871621.html

yum update -y 更新一下软件

部署 python 环境(superset 推荐在 python 虚拟机中部署 superset)

superset 官方提供的安装教程有点问题,所以要有一点小的更改。
https://superset.apache.org/docs/installation/installing-superset-from-scratch

  • 这是官方给的环境安装的示例
    不过按这个安装,一会安装 superset 会报错,所以不要用这个命令。
    sudo yum install gcc gcc-c++ libffi-devel python-devel python-pip python-wheel openssl-devel cyrus-sasl-devel openldap-devel

  • 安装 python3 及开发包
    yum install python3 python3-devel -y

  • 更换一下 python3 虚拟机环境镜像源

    • 方案1
      执行该命令 pip3 config set global.index-url https://mirrors.aliyun.com/pypi/simple/
      如果可以执行,则更换源成功。
    • 方案2 手动添加阿里源
      mkdir -p ~/.pip
      touch ~/.pip/pip.conf
      在 pip.conf 文件中写入以下内容
  [global]
index-url = https://mirrors.aliyun.com/pypi/simple/

现在,你已经成功将 Python 3 的 pip 工具更换为阿里云源.

  • 安装 pip 工具
    pip3 install --upgrade pip

  • 安装 Python Wheel 包,也称为 Wheel 文件
    yum install python3-wheel -y
    至此,你的 python 环境部署完成。

安装其他依赖工具包

yum install gcc gcc-c++ libffi-devel openssl-devel cyrus-sasl-devel openldap-devel -y

部署 python 虚拟环境

  • 安装虚拟环境
    pip install virtualenv

  • 创建和激活虚拟环境
    python3 -m venv venv 创建一个虚拟环境
    . venv/bin/activate 激活虚拟环境

[root@5e674f9589a2 ~]# python3 -m venv venv
[root@5e674f9589a2 ~]# . venv/bin/activate
(venv) [root@5e674f9589a2 ~]#

出现 (venv) 之后,就说明激活成功了。

安装和初始化 Superset

  • 更新一下 pip 工具
    pip install --upgrade pip 更新一下 pip 工具

  • 安装 superset
    pip install apache-superset

  • 安装 sqlalchemy 库
    pip install sqlalchemy
    SQLAlchemy 是一个流行的 Python SQL 工具和对象关系映射(ORM)库,它提供了一种在 Python 中进行数据库操作的灵活和高效的方法

  • 安装 Python 的 dataclasses 库
    pip install dataclasses
    dataclasses 是 Python 3.7 版本引入的一个标准库,可以方便地创建和操作不可变的数据类。

  • 设置一下语言环境,不设置可能 superset db upgrade 会报错
    export LC_ALL=en_US.UTF-8
    export LANG=en_US.UTF-8

  • 初始话数据库,默认 sqlite
    superset db upgrade

  • 安装一下 Python Imaging Library (PIL)
    pip install pillow

  • 在数据库创一个管理员
    export FLASK_APP=superset
    superset fab create-admin 这条命令依赖 PIL
    然后输入用户名,密码就好了,邮箱不设置也可以。

  • 初始化 superset
    superset init

  • 启动 superset
    superset run -h 0.0.0.0 -p 33333 --with-threads --reload --debugger
    因为我是 docker 上的 linux 容器里部署的 superset,且 docker 映射的端口为 33333,需要在 docker 所在的主机访问,需要加-h 0.0.0.0,否则本地端口是无法映射到 33333 端口的。

  • 完结散花
    在浏览器上输入:http://localhost:33333/superset/profile/root/

posted @ 2023-12-02 15:04  RafaelLxf  阅读(306)  评论(0)    收藏  举报