docker常用命令

基础概念介绍

  1. 镜像(Image):Docker 镜像是⽤于创建 Docker 容器的模板,⽐如 Ubuntu 系统
  2. 容器(Container):容器是独⽴运⾏的⼀个或⼀组应⽤,是镜像运⾏时的实体
  3. 客户端(client):Docker 客户端通过命令⾏或者其他⼯具使⽤ Docker SDK
    (https://docs.docker.com/develop/sdk/) 与 Docker 的守护进程通信
  4. 主机(host):⼀个物理或者虚拟的机器⽤于执⾏ Docker 守护进程和容器
  5. 注册中⼼(Registry):Docker 仓库⽤来保存镜像,可以理解为代码控制中的代码仓库。Docker
    Hub(https://hub.docker.com) 提供了庞⼤的镜像集合供使⽤。
  6. Docker Machine:Docker Machine是⼀个简化Docker安装的命令⾏⼯具,通过⼀个简单的命令⾏
    即可在相应的平台上安装Docker。

docker命令官网

https://docs.docker.com/reference/

docker启动停止及重启

bash 复制代码
systemctl start docker		//启动docker
systemctl stop docker			//停止docker
systemctl restart docker	//重启docker
systemctl status docker		//查看docker状态
systemctl enable docker		//设置开机自启

docker运维操作命令

docker ps : 列出容器
docker inspect : 获取容器/镜像的元数据
docker top :查看容器中运⾏的进程信息,⽀持 ps 命令参数
查看所有运⾏容器的进程信息。
for i in `docker ps |grep Up|awk '{print $1}'`;do echo \ &&docker top $i; done
docker attach :连接到正在运⾏中的容器
docker wait : 阻塞运⾏直到容器停⽌,然后打印出它的退出代码
docker export :将⽂件系统作为⼀个tar归档⽂件导出到STDOUT
docker port :列出指定的容器的端⼝映射,或者查找将PRIVATE_PORT NAT到⾯向公众的端口
docker cp :⽤于容器与主机之间的数据拷⻉
docker diff : 检查容器⾥⽂件结构的更改
docker rename:修改容器name
docker stats :查看容器状态
docker update:用来修改docker run 指定的运⾏参数

镜像管理命令

docker build 命令⽤于使⽤ Dockerfile 创建镜像

docker build [OPTIONS] PATH | URL | -
OPTIONS说明:
--build-arg=[] :设置镜像创建时的变量;
--cpu-shares :设置 cpu 使⽤权重;
--cpu-period :限制 CPU CFS周期;
--cpu-quota :限制 CPU CFS配额;
--cpuset-cpus :指定使⽤的CPU id;
--cpuset-mems :指定使⽤的内存 id;
--disable-content-trust :忽略校验,默认开启;
-f :指定要使⽤的Dockerfile路径;
--force-rm :设置镜像过程中删除中间容器;
--isolation :使⽤容器隔离技术;
--label=[] :设置镜像使⽤的元数据;
-m :设置内存最⼤值;
--memory-swap :设置Swap的最⼤值为内存+swap,"-1"表示不限swap;
--no-cache :创建镜像的过程不使⽤缓存;
--pull :尝试去更新镜像的新版本;
--quiet, -q :安静模式,成功后只输出镜像 ID;
--rm :设置镜像成功后删除中间容器;
--shm-size :设置/dev/shm的⼤⼩,默认值是64M;
--ulimit :Ulimit配置。
--squash :将 Dockerfile 中所有的操作压缩为⼀层。
--tag, -t: 镜像的名字及标签,通常 name:tag 或者 name 格式;可以在⼀次构建中为⼀个
镜像设置多个标签。
--network: 默认 default。在构建期间设置RUN指令的⽹络模式

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

docker images --filter dangling=true	//查看所有悬空镜像
docker image prune										//清除所有悬空镜像

docker rmi : 删除本地⼀个或多个镜像
docker tag : 标记本地镜像,将其归⼊某⼀仓库
docker save : 将指定镜像保存成 tar 归档⽂件
docker load : 导⼊使⽤ docker save 命令导出的镜像
docker import : 从归档⽂件中创建镜像
eg:docker import mynginx.tar mynginx:v3
docker commit :从容器创建⼀个新的镜像
eg:docker commit -a "nick" -m "mynginx commit" mynginx mynginxtest:1.0

镜像仓库命令

docker login : 登陆到⼀个Docker镜像仓库,如果未指定镜像仓库地址,默认为官⽅仓库
Docker Hub
docker logout : 登出⼀个Docker镜像仓库,如果未指定镜像仓库地址,默认为官⽅仓库
Docker Hub
eg:
docker login -u ⽤户名 -p 密码
docker logout

docker pull : 从镜像仓库中拉取或者更新指定镜像
eg:docker pull nginx
docker push : 将本地的镜像上传到镜像仓库,要先登陆到镜像仓库
docker search : 从Docker Hub查找镜像
eg
从 Docker Hub 查找所有镜像名包含 nginx,并且收藏数⼤于 10 的镜像
 docker search -f stars=10 nginx

docker环境信息命令

docker info [OPTIONS] 			//显示 Docker 系统信息,包括镜像和容器数。
docker version 							//显示 Docker 版本信息。
docker events [OPTIONS]  		//从服务器获取实时事件 
docker --help								//查看docker总体帮助文档

docker logs	[OPTIONS]				//获取容器的⽇志
docker history [OPTIONS]		//查看指定镜像的创建历史。

容器的⽣命周期管理命令

docker create :创建⼀个新的容器但不启动它
docker run :创建⼀个新的容器并运⾏⼀个命令
eg: docker run -d -p 81:80 -d --name=mynginx nginx
docker start :启动⼀个或多个已经被停⽌的容器
docker stop :停⽌⼀个运⾏中的容器
docker restart :重启容器
docker kill :杀掉⼀个运⾏中的容器
docker rm :删除⼀个或多个容器
docker pause :暂停容器中所有的进程
docker unpause :恢复容器中所有的进程
docker exec :在运⾏的容器中执⾏命令

docker run命令详情

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: 绑定⼀个卷
--restart 指定容器重启条件,默认为no
相关推荐
码农君莫笑8 分钟前
Blazor项目中使用EF读写 SQLite 数据库
linux·数据库·sqlite·c#·.netcore·人机交互·visual studio
mubeibeinv18 分钟前
项目搭建+图片(添加+图片)
java·服务器·前端
dessler23 分钟前
Docker-如何启动docker
运维·docker·云原生·容器·eureka
zhy2956323 分钟前
【DOCKER】基于DOCKER的服务之DUFS
运维·docker·容器·dufs
无为之士28 分钟前
Linux自动备份Mysql数据库
linux·数据库·mysql
秋名山小桃子38 分钟前
Kunlun 2280服务器(ARM)Raid卡磁盘盘符漂移问题解决
运维·服务器
与君共勉1213838 分钟前
Nginx 负载均衡的实现
运维·服务器·nginx·负载均衡
岑梓铭1 小时前
(CentOs系统虚拟机)Standalone模式下安装部署“基于Python编写”的Spark框架
linux·python·spark·centos
努力学习的小廉1 小时前
深入了解Linux —— make和makefile自动化构建工具
linux·服务器·自动化
MZWeiei1 小时前
Zookeeper基本命令解析
大数据·linux·运维·服务器·zookeeper