【问题标题】:Run Superset as Service将超集作为服务运行
【发布时间】:2019-01-24 22:29:15
【问题描述】:

我已经在虚拟环境中配置了我的超集,希望将其作为服务运行 我试过使用下面的配置,但它不起作用

[Unit]
Description=superset service
After=network.target

[Service]
Type=simple
User=superset
Group=superset
Environment=PATH=/home/ubuntu/code/superset:$PATH
Environment=PYTHONPATH=/var/superset/superset:$PYTHONPATH
ExecStart=/home/ubuntu/code/superset/superset runserver 

[Install]
WantedBy=multi-user.target

虚拟环境文件夹是超集

以下错误

/etc/init.d/superset: 1: /etc/init.d/superset: [单位]: 未找到 用法:服务 | --status-all | [ 服务名称 [ 命令 | --full-restart ] ] /etc/init.d/superset: 5: /etc/init.d/superset: [Service]: not found

【问题讨论】:

    标签: daemon superset apache-superset python-daemon start-stop-daemon


    【解决方案1】:

    实际上superset runserver 用于开发模式,强烈推荐gunicorn等其他工具用于生产。 无论如何,主要问题是 virutalenv 上的 superset 路径是 $VENV_PATH/bin/superset(通常,像 superset 或airflow 等服务器在此路径上:$VENV_PATH/bin,在 Linux 系统上查找任何应用程序路径的简单方法是使用 which 命令,在这种情况下,您可以使用which superset查找超集路径)。

    这是我在生产中使用的超集服务文件,希望有用:

    [Unit]
    Description = Apache Superset Webserver Daemon
    After = network.target
    
    [Service]
    PIDFile = /home/superset/superset-webserver.PIDFile
    User = superset
    Group = superset
    Environment=SUPERSET_HOME=/home/superset
    Environment=PYTHONPATH=/home/superset
    WorkingDirectory = /home/superset
    ExecStart =/home/superset/venv/bin/python3.7 /home/superset/venv/bin/gunicorn --workers 8 --worker-class gevent  --bind 0.0.0.0:8888 --pid /home/superset/superset-webserver.PIDFile superset:app
    ExecStop = /bin/kill -s TERM $MAINPID
    
    
    [Install]
    WantedBy=multi-user.target
    
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-05-16
      • 2020-07-13
      • 1970-01-01
      • 2018-04-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多