posts - 167,comments - 59,views - 34万

docker基础命令

容器生命周期管理

1
2
3
4
5
6
7
8
9
10
run         创建一个新容器并运行
start       开启一个容器并使其在后台运行
stop        停止一个容器
restart     重启一个容器
kill        杀掉一个容器进程
rm          删除容器
pause       暂停容器
unpause     恢复暂停容器
create      从镜像中创建一个容器
exec        对一个容器执行shell命令

容器操作

1
2
3
4
5
6
7
8
9
10
11
12
13
14
ps          列出容器
inspect     获取容器或镜像的元数据
top         查看正在运行中的容器进程信息
attach      链接正在运行的容器
events      从docker服务器获取事件
logs        获取docker日志
wait        让一个容器进入等待,使其进入阻塞状态
export      讲一个容器的文件系统打包至tar
port        列出一个容器的端口映射情况
container   管理已经运行的容器的
deploy      部署新的堆栈或更新已有堆栈的
update      更新容器
rename      重命名容器
volume      卷管理

容器文件系统操作

1
2
3
commit      提交一个容器的文件系统,使之生成一个新的镜像
cp          向一个正在运行的容器复制文件,或将容器中的文件复制出来
diff        检查一个容器文件系统更改情况

镜像仓库操作

1
2
3
4
5
login       docker登入
logout      docker登出
pull        拉取镜像
push        推送镜像至服务器
search      在docker hub上查询镜像

镜像管理

1
2
3
4
5
6
7
8
9
10
11
12
images      列出镜像
rmi       删除镜像
tag         修改本地某一镜像的标记,使其镜像属于某一仓库
build       通过指定Dockerfile文件编译镜像
history     查看镜像历史
save        将制定镜像保存成tar文件
load        从tar中恢复镜像
import      从tar中创建一个新镜像
checkpoint  设置checkpoint,类似于恢复点,可以让镜像撤销到曾经设置的某一个checkpoint上
image       docker镜像管理
manifest    docker镜像清单管理
trust       docker可信镜像管理

集群管理

1
2
3
swarm       docker集群管理工具
node        docker集群节点控制
stack       docker集群堆栈管理

其他命令

1
2
3
4
5
6
7
8
9
info        查询docker信息
version     查询docker版本
system      docker系统管理
stats       docker容器资源使用统计
config      管理docker配置
network     docker网络管理
plugin      docker插件管理
secret      docker敏感信息管理
service     docker服务管理

常用docker命令语法

镜像相关

1、搜索镜像文件

1
2
3
4
5
6
7
docker search [OPTIONS] TERM
 
--automated :只列出 automated build类型的镜像;
 
--no-trunc :显示完整的镜像描述;
 
-s :列出收藏数不小于指定值的镜像。

2、列出全部镜像文件

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

3、拉去镜像文件

1
2
3
4
5
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
 
-a :拉取所有 tagged 镜像
 
--disable-content-trust :忽略镜像的校验,默认开启<br><br>例如:docker pull nginx 等价于docker pull nginx:latest

4、删除镜像文件

1
2
3
4
5
6
7
8
9
10
11
12
13
docker rmi [OPTIONS] IMAGE [IMAGE...]
 
OPTIONS说明
 
    -f :强制删除;
 
    --no-prune :不移除该镜像的过程镜像,默认移除;
 
例如:
     docker rmi -f nginx 等价于 docker rmi -f nginx:latest
     删除单个:docker rmi -f 镜像ID
     删除多个:docker rmi -f 镜像名1:TAG 镜像名2:TAG
     删除全部:docker rmi -f $(docker images -aq)

容器相关

1、新建并启动容器

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
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
 
OPTIONS(常用)说明:
 
    -a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;
 
    -d: 后台运行容器,并返回容器ID;
 
    -i: 以交互模式运行容器,通常与 -t 同时使用;
 
    -P: 随机端口映射,容器内部端口随机映射到主机的高端口
 
    -p: 指定端口映射,格式为:主机(宿主)端口:容器端口
 
    -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;
 
    --name="nginx-lb": 为容器指定一个名称;
 
    --dns 8.8.8.8: 指定容器使用的DNS服务器,默认和宿主一致;
 
    --dns-search example.com: 指定容器DNS搜索域名,默认和宿主一致;
 
    -h "mars": 指定容器的hostname;
 
    -e username="ritchie": 设置环境变量;
 
    --env-file=[]: 从指定文件读入环境变量;
 
    --cpuset="0-2" or --cpuset="0,1,2": 绑定容器到指定CPU运行;
 
    -m :设置容器使用内存最大值;
 
    --net="bridge": 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型;
 
    --link=[]: 添加链接到另一个容器;
 
    --expose=[]: 开放一个端口或一组端口;
 
    --volume , -v: 绑定一个卷

2、列出容器列表

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

3、退出容器

1
2
exit         容器停止退出
Ctrl+P+Q     容器不停止退出

4、启动容器、停止和重启容器

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

5、删除容器

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

6、查看docker日志

1
2
3
4
5
6
7
8
9
10
11
docker logs [OPTIONS] CONTAINER
 
OPTIONS说明:
 
    -f : 跟踪日志输出,跟随最近的日志打印
 
    --since :显示某个开始时间的所有日志
 
    -t : 显示时间戳
 
    --tail :仅列出最新N条容器日志

7、查看docker内进程

1
docker top [OPTIONS] CONTAINER [ps OPTIONS]

8、获取容器的元数据

1
2
3
4
5
6
7
8
9
docker inspect [OPTIONS] NAME|ID [NAME|ID...]
 
OPTIONS说明:
 
    -f :指定返回值的模板文件。
 
    -s :显示总的文件大小。
 
    --type :为指定类型返回JSON。

9、进入容器

1
2
3
4
5
6
7
8
9
docker exec [OPTIONS] CONTAINER COMMAND [ARG...]
 
OPTIONS说明:
 
    -d :分离模式: 在后台运行
 
    -i :即使没有附加也保持STDIN 打开
 
    -t :分配一个伪终端

 

posted on   23云恋49枫  阅读(47)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
< 2025年3月 >
23 24 25 26 27 28 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 1 2 3 4 5

点击右上角即可分享
微信分享提示