如何在Docker容器中启动时运行服务

问题描述:

我在Docker容器中使用Centos7。我已经在Centos中安装了Rundeck。如何在Docker容器中启动时运行服务

如何在centos启动时自动运行rundeck?

以什么方式做我需要编辑.bashrc文件

在启动时启动容器中的应用程序,在您的Dockerfile设置ENTRYPOINTCMD

FROM ... 
RUN ... 
EXPOSE ... 
ENTRYPOINT ["<rundeck command>", "rundeck parameters"] 
CMD ["my default rundeck options"] 

现在你可以用通常的

docker run ... <image> 

开始您的容器,它会启动rundeck应用和沿rundeck parametersmy default rundeck options通过。然而,什么是好的是,你现在还可以做

docker run ... <image> <special parameters> 

这会导致你的容器启动rundeck应用与rundeck parameters,但my default rundeck optionsspecial parameters覆盖。

集装箱运行平台并不重要,因为您需要在同一个容器上使用多个进程,包括它们之间的关系数据库。

为此,最好的做法是配置supervisord运行并监视这些进程并设置dockerfile CMD来运行它。

您可以在此回购协议中找到rundeck的supervisord配置示例:https://github.com/jjethwa/rundeck