启动容器后,通过docker ps -a 查看结果容器退出了。

1.启动容器

方案一

docker run -d <image_name> tail -f /dev/null

docker run -d configserver tail -f /dev/null
或者
docker run -d configserver /bin/bash ping 127.0.0.1
或者
docker run -d configserver /bin/bash -c "while true;do echo hello docker;sleep 1;done"

方案二

1.使用交互式启动,使主进程不退出

docker run -i [CONTAINER_NAME or CONTAINER_ID]

2.使用后台模式和tty选项,使主进程不退出

docker run -dit [CONTAINER_NAME or CONTAINER_ID]

  # -i interactive=true 开启 stdin
  # -t tty=true 分配会话终端
 # -d 后台方式

   这种方式需要在启动容器时创建/bin/bash的进程

  dockerfile文件中:

  

创建容器:

docker run  --name=docker_nginx --cap-add NET_ADMIN -dit docker_nginx

2.DockerFile

方式1: 

      修改dockerfile创建一个守护进程方式实现

# dockerfile文件中设置后台执行shell脚本或者可执行jar
cmd shell.sh && tail -f /dev/null
或者cmd shell.sh &
或者 cmd shell.sh > shello.log
或者 cmd java -jar xxx.jar
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐