【自学Docker 】Docker管理命令大全(上)

Docker create命令

Docker create命令概述

Docker create命令 用于创建一个新的 Docker容器,类似 docker run -d 命令。

但是与 docker run -d 不同的是,docker create 创建的容器并未实际启动,还需要执行 docker start 命令或 docker run 命令以启动容器。

事实上,docker create 命令常用于在启动容器之前进行必要的设置。

Docker create命令语法

haicoder(www.haicoder.net)# docker create [OPTIONS] IMAGE [COMMAND] [ARG...]

Docker create命令参数列表

参数列表,类似于 docker run 命令。

案例

创建容器

使用 docker create 命令,创建 docker容器。

haicoder(www.haicoder.net)# docker create ubuntu
#返回报文
76f0e8828dcc4dd060819435039adcfbe66f26726ddc9ea58035d0c46420eaaa

使用 docker ps 命令,查看当前正在运行的容器,显示如下图,所示:

请添加图片描述

即没有任何正在运行的容器,我们使用 docker ps -a 命令,查看当前所有的容器列表,显示如下图:

请添加图片描述

我们刚创建的容器,此时已经存在,只是没有运行。

运行容器

使用 docker create 命令,创建 docker容器。

haicoder(www.haicoder.net)# docker create -it --name haicoder ubuntu bash
#返回结果
87cdc6386c7d92e3bb2b71f1c50369652ec6809c26aa388de5ef8b29165ff781

使用 docker ps命令,查看当前正在运行的容器,显示如下图,所示:

请添加图片描述

即没有任何正在运行的容器,我们使用 docker ps -a 命令,查看当前所有的容器列表,显示如下图:

请添加图片描述

我们刚创建的容器,此时已经存在,只是没有运行,现在我们使用 docker start命令,启动刚创建的 docker容器。

haicoder(www.haicoder.net)# docker start -a -i haicoder
[root@392ed39de034 /]# ls  
anaconda-post.log  bin  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
[root@392ed39de034 /]# exit
exit
haicoder(www.haicoder.net)#

使用 docker start 命令,运行容器后,命令行的提示符变了 docker 容器的 id,说明此时已经进入了 docker 容器内部,同时使用 exit 命令,退出容器。

使用 docker rm 命令,删除所有 docker 容器。

haicoder(www.haicoder.net)# docker rm $(docker ps -aq)
#输出信息
392ed39de034
d267bd988263

Docker create命令总结

Docker create命令用于创建一个新的容器,类似 docker run -d 命令。

Docker create命令语法:

docker create [OPTIONS] IMAGE [COMMAND] [ARG...]

Docker exec命令

Docker exec命令概述

docker exec 命令可以用来在运行的 Docker容器 中执行命令。

docker exec命令是需要容器处于运行中且 PID 1 进程也处于运行中才能执行的操作。该命令后面的参数 container 可以是容器 Id 或者是容器名。

Docker exec命令语法

haicoder(www.haicoder.net)# docker exec [options] container command [arg...]

Docker exec命令参数列表

参数 描述
–detach, -d 后台运行模式,在后台执行命令相关命令。
–detach-keys 覆盖容器后台运行的一些参数信息。
–env, -e 设置环境变量。
–interactive, -i 展示容器输入信息 STDIN。
–privileged 为命令提供一些扩展权限。
–tty, -t 命令行交互模式。
–user, -u 设置用户名。

案例

查看文件

使用 docker run 命令,在后台运行一个容器。

haicoder(www.haicoder.net)# docker run -it -d --name haicoder ubuntu /bin/bash
#返回报文
5ee4fdbe4021bdb1983037f405ff6b0535399f8611c5542e52ae7ef9e12eb0c1

使用 docker ps 命令,查看当前正在运行的容器,显示如下图,所示:

请添加图片描述

使用 docker exec 命令,在运行的容器中执行命令 pwd,即查看当前目录。

haicoder(www.haicoder.net)# docker exec haicoder pwd
#返回结果
/

使用 docker exec 命令,在运行的容器中执行命令 ls,即查看目录文件。

haicoder(www.haicoder.net)# docker exec haicoder ls /tmp
#输出
ks-script-eC059Y
yum.log

使用 docker killdocker rm 命令停止,并删除所有容器。

haicoder(www.haicoder.net)# docker kill haicoder
#输出
haicoder
haicoder(www.haicoder.net)# docker rm `docker ps -aq`
#输出
5ee4fdbe4021

创建文件

使用 docker run 命令,在后台运行一个容器。

haicoder(www.haicoder.net)# docker run -it -d --name haicoder centos /bin/bash
#输出
a2e8af9df8688b848ba5459fcaa47b0a3db2c7cdaaeba92163bf93597081ca08

使用 docker ps命令,查看当前正在运行的容器,显示如下图,所示:

请添加图片描述

使用 docker exec命令,查看容器的 /etc 目录的文件是否有 haicoder。

haicoder(www.haicoder.net)# docker exec haicoder ls /etc | grep haicoder

此时终端没有任何输出,即 docker 容器的 /etc 目录,没有 haicoder 文件。

使用 docker exec 命令,在 docker 容器内部的 /etc 目录,创建一个 haicoder 文件。

haicoder(www.haicoder.net)# docker exec haicoder mkdir /etc/haicoder

再次使用 docker exec命令,查看容器的 /etc 目录的文件是否有 haicoder。

haicoder(www.haicoder.net)# docker exec haicoder ls /etc | grep haicoder
#输出
haicoder

此时终端输出了 haicoder,即使用 docker exec 在 docker 容器内部创建文件成功。

进入容器

使用 docker run -it -d 命令,启动一个 dokcer容器。

haicoder(www.haicoder.net)# docker run --name haicoder -it -d ubuntu
ecb444c660ac2828a75cfdc6279dfc3b6311537d5cd2944ac757b5c155d0b9a6

使用 docker ps命令,查看当前正在运行的容器,显示如下图所示:

请添加图片描述

使用 docker exec -it containerName /bin/bash 命令,进入正在运行的 docker 容器,此时终端显示如下图所示:

haicoder(www.haicoder.net)# docker exec -it haicoder /bin/bash

请添加图片描述

此时,终端提示符变成了容器Id,即我们进入了 docker容器内部。使用 exit 命令或者 Ctrl+d 退出容器,再次使用 docker ps 命令,查看当前正在运行的容器,此时终端显示如下:

请添加图片描述

原来正在运行的容器还在继续运行。

这里如果使用 docker attach 进入容器后,使用 exit 命令或者 Ctrl+d 退出容器那么运行的容器会退出。

使用 docker kill 和 docker rm 命令,删除所有容器。

haicoder(www.haicoder.net)# docker kill `docker ps -qa` ; docker rm `docker ps -aq`

Docker exec命令总结

docker exec 命令可以用来在运行的 Docker容器中执行命令。该命令是需要容器处于运行中且 PID 1 进程也处于运行中才能执行的操作。

Docker exec命令语法:

docker exec [options] container command [arg...]


Docker run命令

Docker run命令概述

docker run命令 可以用来创建一个新的 Docker容器 并运行一个命令。

Docker run命令语法

[root@localhost ~]# docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

Docker run命令参数列表

参考 Docker run 参数列表。

案例

参考 Docker run 案例。


Docker start命令

Docker start命令概述

docker start 命令可以启动一个或多个已经被停止的 Docker容器。该命令后面的 CONTAINER 可以是容器Id,或者是容器名。

Docker start命令语法

haicoder(www.haicoder.net)# docker start [OPTIONS] CONTAINER [CONTAINER...]

案例

启动容器

首先,使用 docker create 命令,创建一个容器,并不启动。

haicoder(www.haicoder.net)#  docker create -it --name haicoder ubuntu bash
4137232c2ac57b2d213c6618ef4d9b79b5281cfea2e3877bc0229360fca02fa6

使用 docker ps 命令,查看当前正在运行的容器,显示如下图,所示:

请添加图片描述

即没有任何正在运行的容器,现在我们使用 docker start 命令,启动刚创建的 docker 容器。

haicoder(www.haicoder.net)# docker start -a -i haicoder
[root@4137232c2ac5 /]# ls 
anaconda-post.log  bin  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
haicoder(www.haicoder.net)# exit
exit
haicoder(www.haicoder.net)# 

使用 docker start 命令,运行容器后,命令行的提示符变了 docker 容器的 id,说明此时已经进入了 docker 容器内部,同时使用 exit 命令,退出容器。

即,在以上案例中,我们使用 docker start 命令,启动了一个尚未运行的 docker 容器。

最后,我们使用 docker rm 命令,删除所有 docker 容器。

haicoder(www.haicoder.net)# docker rm $(docker ps -aq)
4137232c2ac5

Docker start命令总结

docker start 命令可以启动一个或多个已经被停止的容器。

Docker start命令语法:

docker start [OPTIONS] CONTAINER [CONTAINER...]

Docker stop命令

Docker stop命令概述

docker stop 命令可以用来停止一个运行中的 Docker容器。该命令后面的 CONTAINER 可以是容器Id,或者是容器名。

Docker stop命令语法

haicoder(www.haicoder.net)# docker stop [OPTIONS] CONTAINER [CONTAINER...]

案例

使用容器 ID 停止容器

首先,使用 docker run 命令,创建并运行一个 docker 容器。

haicoder(www.haicoder.net)# docker run -d -it --name haicoder ubuntu
#返回结果
7a01512bff44caa328185c99e52341d20bc45df9858b8b29d0540e226309be39

使用 docker ps 命令,查看当前正在运行的容器,显示如下图,所示:

请添加图片描述

现在我们使用 docker stop 命令,停止刚运行的 docker 容器。

haicoder(www.haicoder.net)# docker stop 7a01512bff44
7a01512bff44

再次使用 docker ps 命令,查看当前正在运行的容器,显示如下图,所示:

请添加图片描述

此时,已经没有任何可运行的容器了。即,在以上案例中,我们使用 docker stop containerId 命令,停止一个运行中的 docker容器。

最后,我们使用 docker rm 命令,删除所有 docker 容器。

haicoder(www.haicoder.net)# docker rm $(docker ps -aq)
7a01512bff44

使用容器名停止容器

首先,使用 docker run 命令,创建并运行一个 docker容器。

haicoder(www.haicoder.net)# docker run -d -it --name haicoder ubuntu
601d4499b3202f9851a976fcfc9fda04da34bca0918152386c52c8a60f501eb2

使用 docker ps 命令,查看当前正在运行的容器,显示如下图,所示:

请添加图片描述

现在我们使用 docker stop containerName 命令,停止刚运行的 docker 容器。

haicoder(www.haicoder.net)# docker stop haicoder
#输出
haicoder

再次使用 docker ps 命令,查看当前正在运行的容器,显示如下图,所示:

请添加图片描述

此时,已经没有任何可运行的容器了。即,在以上案例中,我们使用 docker stop containerName 命令,停止一个运行中的 docker容器。

最后,我们使用 docker rm 命令,删除所有 docker 容器。

haicoder(www.haicoder.net)# docker rm $(docker ps -aq)
601d4499b320

Docker stop命令总结

docker stop 命令可以用来停止一个运行中的容器。

Docker stop命令语法:

docker stop [OPTIONS] CONTAINER [CONTAINER...]

Docker restart命令

Docker restart命令概述

docker restart 命令可以用来重新启动一个或者多个 Docker容器。该命令后面的 CONTAINER 可以是容器Id,或者是容器名。

Docker restart命令语法

haicoder(www.haicoder.net)# docker restart [OPTIONS] CONTAINER [CONTAINER...]

案例

使用容器 ID 重启容器

首先,使用 docker run 命令,创建并运行一个 docker容器。

haicoder(www.haicoder.net)# docker run -d -it --name haicoder ubuntu
8ca8cde74d8f41dae14c7bfe9722a38cb59cc2e2a71327a35612f11d2c09ebdb

使用 docker ps 命令,查看当前正在运行的容器,显示如下图,所示:

请添加图片描述

现在我们使用 docker restart 命令,重新启动刚运行的 docker容器。

haicoder(www.haicoder.net)# docker restart 8ca8cde74d8f
8ca8cde74d8f

再次使用 docker ps命令,查看当前正在运行的容器,显示如下图,所示:

请添加图片描述

此时,我们发现,容器的运行时间变成了 3 秒,即容器被重新启动了。即,在以上案例中,我们使用 docker restart containerId 命令,重新运行一个 docker容器。

最后,我们使用 docker killdocker rm 命令,停止并删除所有 docker容器。

haicoder(www.haicoder.net)# docker kill $(docker ps -aq) && docker rm $(docker ps -aq)
8ca8cde74d8f
8ca8cde74d8f

使用容器名重启容器

首先,使用 docker run 命令,创建并运行一个 docker 容器。

haicoder(www.haicoder.net)# docker run -d -it --name haicoder ubuntu
#输出
401ecddd5f1b676e4a753dcab81091b486a157502da4fc2651ecf3dcc5b370b7

使用 docker ps 命令,查看当前正在运行的容器,显示如下图,所示:

请添加图片描述

现在我们使用 docker restart containerName 命令,重启刚运行的 docker 容器。

haicoder(www.haicoder.net)# docker restart haicoder
haicoder

再次使用 docker ps 命令,查看当前正在运行的容器,显示如下图,所示:

请添加图片描述

此时,我们发现,容器的运行时间变成了 3 秒,即容器被重新启动了。即,在以上案例中,我们使用 docker restart containerName 命令,重启一个运行中的 docker 容器。

最后,我们使用 docker kill 和 docker rm 命令,停止并删除所有 docker 容器。

haicoder(www.haicoder.net)# docker kill $(docker ps -aq) && docker rm $(docker ps -aq)
401ecddd5f1b
401ecddd5f1b

Docker restart命令总结

docker restart 命令可以用来重新启动一个或者多个 Docker容器。

Docker restart命令语法:

docker restart [OPTIONS] CONTAINER [CONTAINER...]

猜你喜欢

转载自blog.csdn.net/weixin_41384860/article/details/128707342