【docker】服务随容器启动而自启动
场景:
有一个docker, 在该docker中有服务A,希望每次启动容器时服务A都随着容器启动。这样就不用每次都进入容器手动启动服务了。
方法:
1.需要在docker中添加一个启动服务脚本auto_service.sh
#!/bin/sh /bin/serviceA start #启动服务 /bin/bash #保留一个终端,防止容器自动退出
注意:上面三行都是必须的。
#!/bin/sh 告诉linux应该使用什么指令运行此脚本。我用的是官方发布的centos7的docker。
/bin/serviceA start 启动服务A的指令,根据需要自行修改
/bin/bash 保留一个终端,这句是必要的。否则在服务A执行完成后容器就会自动退出了。
2.将有auto_service.sh的容器打包为镜像
3.运行
docker run -d -t -v /etc/localtime:/etc/localtime --name service_A imageX /home/auto_service.sh
注意,最后要把自行启动的脚本加上。