## 查看当前正在运行的docker进程
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3b718e1328b6 75835a67d134 "/bin/bash" 3 minutes ago Up 3 minutes sharp_chaplygin
[root@localhost ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3b718e1328b6 75835a67d134 "/bin/bash" 16 minutes ago Up 16 minutes sharp_chaplygin
d512749cfcaf 4ab4c602aa5e "/hello" 4 hours ago Exited (0) 4 hours ago adoring_hawking
a163e0378c36 4ab4c602aa5e "/hello" 4 hours ago Exited (0) 4 hours ago wizardly_mahavira
[root@localhost ~]# docker ps -q
3b718e1328b6
[root@localhost ~]# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3b718e1328b6 75835a67d134 "/bin/bash" 17 minutes ago Up 17 minutes sharp_chaplygin
[root@localhost ~]# docker ps -lq
3b718e1328b6
[root@localhost ~]# docker ps -n 3
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3b718e1328b6 75835a67d134 "/bin/bash" 17 minutes ago Up 17 minutes sharp_chaplygin
d512749cfcaf 4ab4c602aa5e "/hello" 4 hours ago Exited (0) 4 hours ago adoring_hawking
a163e0378c36 4ab4c602aa5e "/hello" 4 hours ago Exited (0) 4 hours ago wizardly_mahavira
容器停止退出
[root@3b718e1328b6 /]# exit
exit
再次在宿主机上查看当前运行的docker进程,CentOS的状态已显示Exited
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
[root@localhost ~]# docker ps -l
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3b718e1328b6 75835a67d134 "/bin/bash" 23 minutes ago Exited (0) 2 minutes ago sharp_chaplygin
容器不停止退出
## 重新启动CentOS容器 将该容器命名为 myCentOS
[root@localhost ~]# docker run -it --name myCentOS centos
[root@c301c13cf7fd /]#
## 在宿主机终端查看当前运行的docker进程 可以看到已启动成功
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c301c13cf7fd centos "/bin/bash" 6 seconds ago Up 5 seconds myCentOS
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c301c13cf7fd centos "/bin/bash" 7 minutes ago Up 7 minutes myCentOS
[root@localhost ~]# docker ps -n 2
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c301c13cf7fd centos "/bin/bash" 7 minutes ago Up 7 minutes myCentOS
3b718e1328b6 75835a67d134 "/bin/bash" 35 minutes ago Exited (0) 14 minutes ago sharp_chaplygin
启动容器
## 查看最近两次启动的容器,接下来启动容器id为3b718e1328b6的容器
[root@localhost ~]# docker ps -n 2
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c301c13cf7fd centos "/bin/bash" 7 minutes ago Up 7 minutes myCentOS
3b718e1328b6 75835a67d134 "/bin/bash" 35 minutes ago Exited (0) 14 minutes ago sharp_chaplygin
## docker start 容器id/容器名称
[root@localhost ~]# docker start 3b718e1328b6
3b718e1328b6
## 启动成功
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c301c13cf7fd centos "/bin/bash" 14 minutes ago Up 14 minutes myCentOS
3b718e1328b6 75835a67d134 "/bin/bash" 41 minutes ago Up 7 seconds sharp_chaplygin
重启容器
## 容器id为 c301c13cf7fd的运行时间为 14 minutes
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c301c13cf7fd centos "/bin/bash" 14 minutes ago Up 14 minutes myCentOS
3b718e1328b6 75835a67d134 "/bin/bash" 41 minutes ago Up 7 seconds sharp_chaplygin
## docker restart 容器id/容器名称
[root@localhost ~]# docker restart c301c13cf7fd
c301c13cf7fd
## 容器id为 c301c13cf7fd 重启后,运行时间为 2 seconds
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c301c13cf7fd centos "/bin/bash" 17 minutes ago Up 2 seconds myCentOS
3b718e1328b6 75835a67d134 "/bin/bash" 45 minutes ago Up 3 minutes sharp_chaplygin
停止容器:缓慢停止
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c301c13cf7fd centos "/bin/bash" 17 minutes ago Up 2 seconds myCentOS
3b718e1328b6 75835a67d134 "/bin/bash" 45 minutes ago Up 3 minutes sharp_chaplygin
## docker stop 容器id/容器名称
[root@localhost ~]# docker stop 3b718e1328b6
3b718e1328b6
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c301c13cf7fd centos "/bin/bash" 21 minutes ago Up 3 minutes myCentOS
强制停止容器:迅速停止
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c301c13cf7fd centos "/bin/bash" 21 minutes ago Up 3 minutes myCentOS
## docker kill 容器id/容器名称
[root@localhost ~]# docker kill c301c13cf7fd
c301c13cf7fd
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
删除已停止的容器
[root@localhost ~]# docker ps -n 2
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c301c13cf7fd centos "/bin/bash" 27 minutes ago Exited (137) 3 minutes ago myCentOS
3b718e1328b6 75835a67d134 "/bin/bash" About an hour ago Exited (137) 6 minutes ago sharp_chaplygin
## docker rm 容器id/容器名称
[root@localhost ~]# docker rm 3b718e1328b6
3b718e1328b6
[root@localhost ~]# docker ps -n 2
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c301c13cf7fd centos "/bin/bash" 27 minutes ago Exited (137) 3 minutes ago myCentOS
d512749cfcaf 4ab4c602aa5e "/hello" 5 hours ago Exited (0) 5 hours ago adoring_hawking
一次性删除多个容器
docker rm -f $(docker ps -a -q)
或
docker ps -a -q | xargs docker rm
启动守护式容器(不进行交互)
[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
centos latest 75835a67d134 13 hours ago 200MB
tomcat 8.0 ef6a7c98d192 3 weeks ago 356MB
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
## 启动守护式容器
[root@localhost ~]# docker run -d centos
3a4ee95c25101a1b40b4b1ac5b21411f800fafb621be1e32ee10cc392c58f18d
## 此时会发现,刚刚启动的容器已经退出
[root@localhost ~]# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
3a4ee95c2510 centos "/bin/bash" 4 minutes ago Exited (0) 4 minutes ago flamboyant_bartik
c301c13cf7fd centos "/bin/bash" 43 minutes ago Exited (137) 20 minutes ago myCentOS
d512749cfcaf 4ab4c602aa5e "/hello" 5 hours ago Exited (0) 5 hours ago adoring_hawking
a163e0378c36 4ab4c602aa5e "/hello" 5 hours ago Exited (0) 5 hours ago wizardly_mahavira
[root@localhost ~]# docker run -it centos /bin/bash
[root@7aca46d983a0 /]# pwd
/
ctrl+P 再 ctrl+Q
[root@7aca46d983a0 /]# [root@localhost ~]#
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7aca46d983a0 centos "/bin/bash" 43 seconds ago Up 43 seconds boring_hofstadter
## docker attach 容器id/容器名称,重新进入正在运行的容器
[root@localhost ~]# docker attach 7aca46d983a0
[root@7aca46d983a0 /]#
[root@7aca46d983a0 /]# ls
anaconda-post.log bin dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
## 另外一种方式进入
[root@localhost ~]# docker exec -it 7aca46d983a0 /bin/bash
[root@7aca46d983a0 /]#
不进入容器,并执行命令
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7aca46d983a0 centos "/bin/bash" 43 seconds ago Up 43 seconds boring_hofstadter
## docker exec -it 容器id/容器名称 需要执行的命令
[root@localhost ~]# docker exec -it 7aca46d983a0 ls
anaconda-post.log dev home lib64 mnt proc run srv tmp var
bin etc lib media opt root sbin sys usr
从容器内拷贝文件到宿主机上
## 此处将容器内的 /tmp/yum.log 拷贝到 宿主机的 /root 下
[root@localhost ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7aca46d983a0 centos "/bin/bash" 16 minutes ago Up 16 minutes boring_hofstadter
[root@localhost ~]# docker attach 7aca46d983a0
[root@7aca46d983a0 /]# cd /tmp/
[root@7aca46d983a0 tmp]# ls
ks-script-7RxiSx yum.log
[root@7aca46d983a0 tmp]# read escape sequence
ctrl+P 再 ctrl+Q
[root@localhost ~]# ls
anaconda-ks.cfg
## docker cp 容器id/容器名称:容器文件 宿主机路径 (注意 容器id/容器名称 后面有个:)
[root@localhost ~]# docker cp 7aca46d983a0:/tmp/yum.log /root/
[root@localhost ~]# ls
anaconda-ks.cfg yum.log