【问题标题】:Supervisor on a Digital Ocean docker image数字海洋泊坞窗图像上的主管
【发布时间】:2016-08-22 14:00:50
【问题描述】:

(初级问题)

我已成功在 Digital Ocean 液滴上设置了 nginx+gunicorn+django docker 映像。

我的 Django 项目遵循非常好的 Cookie-Cutter-Django 模式 (see here)。

In this doc,有一个主管安装的描述。

我在这里缺少的是主管应该在哪里运行?本地还是远程?

我知道如果我在我的笔记本电脑上安装主管,它将“保持活动”我的命令“docker-compose up”。

但是,如果我请了 1 周的假,而我的笔记本电脑的电池没电了怎么办?

主管会停止工作吗?

如果是这样,我需要将它安装在我的 Droplet 上,对吗?

【问题讨论】:

  • 如果您的笔记本电脑没电了,这有什么关系?您是使用笔记本电脑还是 Droplet 托管您的网站?
  • 我的网站托管在 Droplet 上。我不明白主管会跑到哪里去。

标签: django docker supervisord cookiecutter-django


【解决方案1】:

Supervisor 应该在你的 droplet 上运行。它将确保您的网络服务器在被中断时自动重新启动。示例配置将类似于来自this excellent blog post 的以下内容:

[program:hello]
command = /webapps/hello_django/bin/gunicorn_start                    ; Command to start app
user = hello                                                          ; User to run as
stdout_logfile = /webapps/hello_django/logs/gunicorn_supervisor.log   ; Where to write log messages
redirect_stderr = true                                                ; Save stderr in the same log
environment=LANG=en_US.UTF-8,LC_ALL=en_US.UTF-8                       ; Set UTF-8 as default encoding

【讨论】:

    【解决方案2】:

    我有点困惑。 这篇 SO 帖子很有帮助:Is supervisord needed for docker+gunicorn+nginx? 至于本教程:https://blog.codeship.com/ensuring-containers-are-always-running-with-dockers-restart-policy/

    我现在在 compose.yml 文件中添加了“重启:始终”:

      redis:
        image: redis:latest
        restart: always
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-09-19
      • 1970-01-01
      • 1970-01-01
      • 2021-04-29
      • 2018-12-15
      • 1970-01-01
      • 1970-01-01
      • 2017-05-06
      相关资源
      最近更新 更多