在容器启动时启动服务

我正在尝试在容器启动时运行3个服务(snmpd,sshd和centengine)

由于容器中的运行级别未知,因此服务将无法启动。

我用这个Dockerfile构建了一个镜像:

FROM centos:6.7
MAINTAINER nael <me@mail>

# Update CentOS
RUN yum -y update

# Install wget
RUN yum install -y wget

# Get Centreon Repo
RUN wget http://yum.centreon.com/standard/3.0/stable/ces-standard.repo -O /etc/yum.repos.d/ces-standard.repo

# Install Packages (SSH, sudo, Centreon Poller & Engine, SNMP)
RUN yum install -y --nogpgcheck openssh-clients openssh-server centreon-poller-centreon-engine sudo net-snmp net-snmp-utils

# Install supervisord
RUN rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
RUN yum --enablerepo=epel install -y supervisor
RUN mv -f /etc/supervisord.conf /etc/supervisord.conf.org
ADD supervisord.conf /etc/

# For sshd & centengine
EXPOSE 22 5669

# Change user password
RUN echo -e "password" | (passwd --stdin user)

# Disable PAM (causing issues while ssh login)
RUN sed -ri 's/UsePAM yes/#UsePAM yes/g' /etc/ssh/sshd_config
RUN sed -ri 's/#UsePAM no/UsePAM no/g' /etc/ssh/sshd_config

# Start supervisord
CMD ["/usr/bin/supervisord"]

这是supervisor.conf文件

[supervisord]
nodaemon=true
pidfile=/var/run/supervisord.pid
logfile=/var/log/supervisor/supervisord.log

[program:centengine]
command=service centengine start

[program:snmpd]
command=service snmpd start

[program:sshd]
command=service sshd start

但是,有了这个Dockerfile和supervisord.conf,当我启动容器时,这些服务就没有运行。

可能是什么问题呢 ?

不再使用主管。

我只是services ... start在Dockerfile中包含了所有命令的脚本。当我使用创建容器时,docker run ...只需指定要使用脚本启动它即可。

而且效果很好。

感谢@warmoverflow尝试解决此问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

服务启动时出现NoClassDefFoundError

来自分类Dev

Docker容器无法在启动时启动

来自分类Dev

启动时服务线程死

来自分类Dev

Docker Git克隆在容器启动时启动?

来自分类Dev

-endIn服务在服务启动时

来自分类Dev

我的电子应用启动时如何启动mongodb服务

来自分类Dev

如何在启动时启动服务(`IServiceCollection`)

来自分类Dev

命令列出启动时启动的服务?

来自分类Dev

Upstart服务在其依赖的服务启动时未启动

来自分类Dev

将FreeIPA服务器作为Docker容器启动时出错

来自分类Dev

在启动时启动Android服务

来自分类Dev

服务在调用时启动,但不在启动时启动

来自分类Dev

命令列出启动时启动的服务?

来自分类Dev

服务未在启动时启动

来自分类Dev

服务启动时出现NoClassDefFoundError

来自分类Dev

启动时服务被终止

来自分类Dev

在启动时启动systemd-nspawn / systemd容器

来自分类Dev

使服务不在启动时启动

来自分类Dev

systemd服务无法在启动时启动

来自分类Dev

调试启动时死机的systemd服务

来自分类Dev

阻止服务在启动时启动

来自分类Dev

如何在启动时启动服务

来自分类Dev

服务无法在启动时启动

来自分类Dev

在容器启动时启动服务

来自分类Dev

服务启动时etcd未知作业

来自分类Dev

服务启动时收到通知

来自分类Dev

确保 Docker 容器在主机启动时自动启动

来自分类Dev

在系统启动时启动服务

来自分类Dev

NoReverseMatch 在服务器启动时/