docker容器前台或后台运行的方法

容器分为交互式容器和守护进程式容器

交互式容器

# -it 交互式的容器,一般做为工具类的容器,退出即exit  
#加--rm参数  容器退出时自动删除
#此次创建直接进入容器
docker run -ti --name test centos:7

守护进程式容器

# 守护式的容器,必须要对外暴露端口,以实现自身价值
# 创建后不进入容器,docker ps -a 可以看到正在运行的容器信息
# 守护式的镜像因为在dockerfil;e制作的时候已经指定了第一个运行的程序

# 所以如果用 -ti 的参数 并且不加其它command参数的话,命令回车后
#会一直占用终端,因为在前台运行,小技巧也可以用 & 来后台运行
docker run -d --name test2 nginx:1.14

容器前台或后台运行的方法

docker run [OPTIONS] IMAGE [COMMAND] [ARG...] 命令的默认 COMMAND参数为 /bin/bash

容器前台或后台运行的方法

  1. 前台容器 ctrl p q 切到后台
    docker attach 切换到前台(相当于做了镜像操作,多个docker attach显示同步)
    2.-d 建立容器,运行死循环 sleep 1XXXXXXX,使容器一直后台运行,不会退出
    3.让容器中的程序在容器中前台运行,从而保证容器运行不会关闭 类似于nginx -g "daemon off;" 或tailf /etc/hosts 或其它程序的特殊命令,需要自我记录,一般在制作守护型容器时,非常重要!
    4.docker run 默认command参数是/bin/bash
    5.要使容器持续运行必须有一个运行中的程序,运行一次就关闭的程序不好使
    6.docker run的command参数优先级高于image的CMD优先级,
    如果将一个-d 可以后台运行的image,创建容器指定command参数,
    则以该参数为第一程序

相关推荐