就像您现在所做的那样,添加您的服务/etc/sv/<SERVICE_NAME>/
并添加可执行文件。run
当您准备好运行该服务时,只需将其符号链接到/etc/service
,runit 就会选择它并开始自动运行它。
这是一个简短的(未优化的)Dockerfile,它显示了一个禁用的服务和一个启用的服务。启用的服务将在 Docker 运行时启动。禁用的服务在符号链接到 之前不会启动/etc/service
,此时 runit 将在 5 秒内启动它。
FROM phusion/baseimage
RUN mkdir /etc/sv/disabled_service
ADD disabled_service.sh /etc/sv/disabled_service/run
RUN chmod 700 /etc/sv/disabled_service/run
RUN mkdir /etc/sv/enabled_service
ADD enabled_service.sh /etc/sv/enabled_service/run
RUN chmod 700 /etc/sv/enabled_service/run
RUN ln -s /etc/sv/enabled_service /etc/service/enabled_service
CMD ["/sbin/my_init"]