python – Docker Alpine linux运行2个程序

我正在尝试使用alpine linux创建docker镜像,运行后将创建具有2个正在运行的程序的容器.这个2(在我看来 – 我不太熟悉docker)无法分开,因为第一个程序更改了秒配置文件,然后也应该重新启动该程序.

 我正在努力如何运行这两个程序.我已经添加了自己的脚本,应该运行该程序,但我遗漏了一些东西 – 脚本是每行2行是运行该程序的命令 – 它只启动第一个程序.

在使用python subprocess和systemctl命令的ubuntu中,我重新启动运行服务,但在alpine linux中,它作为程序运行,我不知道如何重新启动/重新加载它.

谢谢你的帮助

解决方法:

我建议看一下supervisord的方法.您可以在docker documentation找到如何使用它.

一些例子:

1. Dockerfile是:

FROM alpine:latest
RUN apk update && apk add --no-cache supervisor openssh nginx
COPY supervisord.conf /etc/supervisord.conf
CMD ["/usr/bin/supervisord", "-c", "/etc/supervisord.conf"]

2. supervisord.conf是:

[supervisord]
nodaemon=true

[program:sshd]
command=/usr/sbin/sshd -D

[program:nginx]
command=nginx -c /etc/nginx/nginx.conf
上一篇:alpine系统安装


下一篇:docker service 创建swarm节点服务