docker命令汇总

docker命令汇总

管理员
2025年6月27日
云原生
#docker

汇总

容器生命周期管理:run、start/stop/restart、kill、rm、pause/unpause、create、exec

容器操作:ps、inspect、top、attach、events、logs、wait、export、port

容器rootfs命令:commit、cp、diff

镜像仓库:login、pull、push、search

本地镜像管理:images、rmi、tag、build、history、save、import

Info|version:info、version

帮助命令

plain
 1  docker --help	  ## 不路径参数都可以使用帮助命令查看
 2  如:docker run --help

docker状态

plain
 1  systemctl start/stop/restart docker    启动/停止/重启docker
 2  systemctl enable/disable docker        设置/取消docker开机自启

docker信息

plain
 1  docker version		查看版本
 2  docker info			  查看docker信息(docker系统系统,镜像,容器数)

docker镜像

plain
 1  docker search image_Name                搜索镜像
 2  docker pull image_Name                  拉取镜像
 3  docker pull hub.c.163.com/library/tomcat:latest      直接下载其他站点镜像
 4  docker image ls 或者docker images         列出本地所有镜像
 5  docker rmi image_ID                      删除镜像
 6  docker rmi -f $(docker images -q)        强制删除所有镜像
 7  docker tag                               标记本地镜像

导入导出

plain
 1  docker save -o 镜像名.tar 镜像名          导出镜像
 2  docker load -i 镜像名加路径               导入镜像
 3  # docker save -o centos.tar centos      导出centos镜像到本地当前目录

创建并运行容器

plain
 1  docker run 参数 容器Name其他
 2  参数:
 3     -i #以交互式模式运行容器,常与-t参数同时使用
 4     -t       #为容器重新分配一个伪输入终端,通常与-i同时使用
 5     -d #后台运行容器,并返回容器ID;
 6     -c #后面跟待完成的命令
 7     --name   #给容器使用内存的最大值
 8     --net       #指定容器使用的网络类型
 9     --link      #链接到另一个容器
10   
11  案例:
12  # docker run -d --name tomcat tomcat:latest
13  #后台启动并运行一个名为tomcat的容器,如果没有tomca镜像,运行前它会自动去docker镜像站点下载最新的镜像文件
14  # docker run -it tomcat:latest /bin/bash
15  #以交互式模式运行容器,然后在容器内执行/bin/bash命令

创建容器但不启动

plain
 1  docker create            
 2  # docker create --name tomcat tomcat:latest

查看正在运行的容器

plain
 1  docker ps                
 2     常用参数如下:
 3        -a       #列出所有容器包含沉睡/退出状态的容器
 4        -f       #根据条件过滤显示内容
 5        -l       #列出最近创建的容器
 6        -n       #列出最近创建的N个容器,N为数字
 7        -q       #只显示容器ID
 8        -s       #显示总文件大小

容器状态

plain
 1  docker kill -s container_ID                  # 杀死运行的容器 参数-s #向容器发送信号
 2  docker start/stop/restart container_ID       # 启动/停止/重启/容器
 3  docker rm container_ID                       # 删除指定关闭状态的容器
 4  docker rm -f container_ID                    # 删除开启的容器
 5  docker container ls -aq                      # 查看所有containerID
 6  docker rm $(docker container ls -aq)         # 删除所有container
 7  
 8  docker rm -f `docker ps -a -q` 							# 删除所有容器

进入运行中的容器

plain
 1  docker exec 参数        
 2  # docker exec -it 容器ID/容器name /bin/bash

获取容器元数据

plain
 1  docker inspect container_ID     
 2        -f      # 指定返回值格式或模板文件
 3        -s      # 显示总文件大小
 4        --type  # 为指定类型返回JSON

获取容器日志

plain
 1  docker logs container_ID/container_Name       
 2     -f      #跟踪日志输出(类似tail)
 3     -t      #显示时间戳

查看容器的端口映射

plain
 1  docker post container_ID/container_Name

用已存在容器重新创建一个新镜像

plain
 1  docker commit     
 2     -a      # 提交的镜像作者
 3     -c      # 使用dockerfile指令来创建镜像
 4     -m      # 提交时附上说明文字
 5     -p      # 在commit时,将容器暂停

使用dockerfile创建镜像

plain
 1  docker build      
 2  	-f 					#指定要使用的Dockerfile路径
 3  	--label=[] 	#设置镜像使用的元数据;
 4  	-m 					#设置内存最大值
 5  	--memory-swap #设置Swap的最大值为内存+swap,"-1"表示不限swap
 6  	--no-cache 		#创建镜像的过程不使用缓存
 7  	--pull 				#尝试去更新镜像的新版本
 8  	-q 						#安静模式,成功后只输出镜像ID
 9  	--rm 					#设置镜像成功后删除中间容器
10  	--ulimit 			#Ulimit配置

查看指定镜像的创建历史

plain
 1  docker history container_ID 
 2     -H              	# 以可读的格式打印镜像大小和日期,默认为true
 3     --no-trunc 			# 显示完整的提交记录
 4     -q              	# 仅列出提交记录ID

查看容器网络信息

plain
 1  docker network inspect bridge
plain
 1  
 2  可以指定要映射的端口,并且,在一个指定端口上只可以绑定一个容器。
 3  端口映射支持的格式有:
 4    ip:hostport:containerport   #指定ip、指定主机port、指定容器port
 5    ip::containerport           #指定ip、未指定主机port、指定容器port
 6    hostport:container          #未指定ip port、指定主机port、指定容器port 
 7  多次使用-p标记可以绑定多个端口,例  -p 00:80 -p 8088:8080可以指定范围,例 -p 1234-1236:1222-1224
 8  
最后更新于 2025/6/27