Docker的基本介绍
# 一、docker 常用命令
# 1, image
# 列出本机的所有/指定 image 文件
docker images
docker image ls [-a] [镜像名]
# 删除 image 文件
docker image rm [imageName]
# 从仓库抓取镜像,docker.io/library 是官方默认仓库地址和用户名可以省略,版本省略时默认是 latest,[选项] [Docker Registry 地址[:端口号]/]仓库名[:标签]
docker image pull docker.io/library/hello-world:v1.0.0
# 上传镜像仓库
docker image push [OPTIONS] NAME[:TAG]
# 为本地的 image 标注用户名和版本。
docker image tag [imageName] [username]/[repository]:[tag]
# 删除虚悬镜像
docker image prune
# 查看镜像历史
docker image history
# 构建镜像,. 表示Dockerfile中打包应用程序的路径,-t 指定镜像名和标签,-f 指定Dockerfile文件名,当前路径默认可以忽略
docker build -t nginx:v3 . [-f filename]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# 2, container
# 列出本机正在运行的容器
docker container ls
# 列出本机所有容器,包括终止运行的容器
docker container ls -a
# 删除 container 文件
docker container rm [containerID]
# 强制删除 container 文件,即使容器在运行
docker container rm -f [containerID]
# 从镜像创建容器并命名
docker container create --name container_name image_name:tag
# 启动已经生成、已经停止运行的容器文件
docker [container] start [containerID]
# 重启某个容器
docker [container] restart [containerID]
# 暂停某个容器的所有进程
docker [container] pause [containerID]
# 取消暂停
docker [container] unpause [containerID]
# 终止容器运行,相当于向容器里面的主进程发出 SIGTERM 信号,然后过一段时间再发出 SIGKILL 信号
docker [container] stop [containerID]
# 终止某个容器实例
docker [container] kill [containID]
# 查看 docker 容器的输出,即容器里面 Shell 的标准输出
docker [container] logs [containerID]
# 从正在运行的 Docker 容器里面,将文件拷贝到本机当前目录
docker container cp [containID]:[/path/to/file] .
# 从镜像创建并运行一个容器,从ubuntu镜像运行容器执行 bash 命令并在容器退出后删除,-i 交互式,-t 终端,-d 后台运行
docker run -it --rm ubuntu:18.04 bash -d
# 每次从镜像中生成容器实例,没有该镜像时自动从仓库抓取
docker container run image
# 进入docker容器
docker container exec -it [containerID] /bin/bash
# 查看容器文件系统的变化
docker container diff 容器名
# 输出 docker 容器的详细信息
docker [container] inspect nofans-tuling
# 重命名容器
docker container rename CONTAINER NEW_NAME
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
# 3, volume
# 创建一个数据卷
docker volume create my-vol
# 查看所有的数据卷
docker volume ls
# 查看数据卷的详细信息
docker volume inspect my-vol
# 删除卷
docker volume rm my-vol
# 删除本地所有未使用的卷
docker volume prune
1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
# 4, system
# 查看镜像、容器、数据卷所占用的磁盘空间
docker system df
# 从服务端获取实时事件
docker system events
# 显示系统详细信息
docker system info
# 移除未使用的数据
docker system prune
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
# 5, network
# 创建一个网络连接
docker network create net_name
# 连接一个容器到网络
docker network connect net_name container_name
# 断开容器的网络连接
docker network disconnect net_name container_name
# 显示网络的详细信息
docker network inspect net_name
# 列出网络
docker network ls
# 移除所有未使用的网络
docker network prune
# 移除某个网络
docker network rm net_name
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 二、Dockerfile 指令介绍
# FROM
- 指定基础镜像,以某个镜像为基础,在其上进行定制;
# RUN
# COPY
# ADD
# CMD
# WORKDIR
# VOLUME
# ENTRYPOINT
# ENV
编辑 (opens new window)
上次更新: 2024/07/24, 14:07:39