0%

docker常用命令

docker常用命令

参考:

https://www.runoob.com/docker/docker-command-manual.html

镜像的操作

1.拉取镜像到本地

1
2
3
4
5
6
7
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
无tag时,默认为latest
OPTIONS说明:
-a :拉取所有 tagged 镜像
--disable-content-trust :忽略镜像的校验,默认开启
eg:
docker pull ubuntu:18.04

2.查看本地全部镜像

1
2
3
4
5
6
7
8
docker images [OPTIONS] [REPOSITORY[:TAG]]
OPTIONS说明:
-a:列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层);
--digests:显示镜像的摘要信息;
-f:显示满足条件的镜像;
--format:指定返回值的模板文件;
--no-trunc:显示完整的镜像信息;
-q:只显示镜像ID。

3.删除本地镜像

1
docker rmi [OPTIONS] IMAGE [IMAGE...]

容器的操作

1.创建和启动一个新的容器

1
2
3
4
5
6
7
8
9
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
IMAGE:镜像名称,run操作的是镜像images
COMMAND:命令,可选
OPTIONS:(常用)
-d:后台运行容器,并返回容器ID;
-i:以交互模式运行容器,通常与 -t 同时使用;
-P:随机端口映射,容器内部端口随机映射到主机的端口
-p:指定端口映射,格式为:主机(宿主)端口:容器端口
-t:为容器重新分配一个伪输入终端,通常与 -i 同时使用;

2.进入到容器内部

1
2
3
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
CONTAINER:容器名称或ID,必选,看出exec操作的对象是容器
COMMAND:命令,必选

3.连接到正在运行的容器

1
2
docker attach [OPTIONS] CONTAINER
CONTAINER:容器名称或ID,必选,attach的操作对象也是容器

三者区别:

  • docker run;创建和启动一个新的容器实例,操作对象是镜像,选项较多,如果你要创建和启动一个容器,只能用run;
  • docker exec: 在已运行的容器中,执行命令,操作对象是容器,如果你要进入已运行的容器,并且执行命令,用exec;
  • docker attach: 同样操作的是已运行的容器,可以将本机标准输入(键盘输入)输到容器中,也可以将容器的输出显示在本机的屏幕上,如果你想查看容器运行过程中产生的标准输入输出,用attach;

https://blog.csdn.net/MePlusPlus/article/details/92822329

4.删除容器(删除容器之前,先停止容器)

1
2
3
4
docker rm [OPTIONS] CONTAINER [CONTAINER...]
OPTIONS说明:
-f:通过 SIGKILL 信号强制删除一个运行中的容器。
-l:移除容器间的网络连接,而非容器本身。

5.启动/停止/重启容器

1
2
3
docker start [OPTIONS] CONTAINER [CONTAINER...]
docker stop [OPTIONS] CONTAINER [CONTAINER...]
docker restart [OPTIONS] CONTAINER [CONTAINER...]

6.列出容器

1
2
3
4
5
6
7
8
9
10
docker ps [OPTIONS]
OPTIONS说明:
-a:显示所有的容器,包括未运行的。
-f:根据条件过滤显示的内容。
--format:指定返回值的模板文件。
-l:显示最近创建的容器。
-n:列出最近创建的n个容器。
--no-trunc:不截断输出。
-q:静默模式,只显示容器编号。
-s:显示总的文件大小。