Docker常用命令

存储引擎
查看CentOS7.6的默认存储引擎docker info |grep Storage 
本地镜像管理
查看本地镜像docker images [OPTIONS] [REPOSITORY[:TAG]]
REPOSITORY      #镜像所属的仓库名称
TAG          #镜像版本号(标识符),默认为latest
IMAGE ID       #镜像唯一ID标示
CREATED        #镜像创建时间
VIRTUAL SIZE     #镜像的大小
-a :列出本地所有的镜像(含中间映像层,默认情况下,过滤掉中间映像层);
--digests :显示镜像的摘要信息;
-f :显示满足条件的镜像;
--format :指定返回值的模板文件;
--no-trunc :显示完整的镜像信息;
-q :只显示镜像ID。
镜像导出
将从本地镜像导出为一个压缩文件,然后复制到其他服务器进行导入使用
docker save
docker save IMAGE -o /path/file.tar.gz
docker save IMAGE > /path/file.tar.gz
docker save > /opt/centos.tar #centos #导出镜像
镜像导入
将镜像导出的压缩文件再导入
docker load [OPTIONS]--input , -i : 指定导入的文件,代替 STDIN。
--quiet , -q : 精简输出信息。
docker load -i centos-latest.tar.xz #导入本地镜像
删除镜像docker rmi [OPTIONS] IMAGE [IMAGE...]
docker rmi -f centos:centos8.1.1911  ---强制删除正在使用的镜像,也会删除对应的容器
docker rmi  -f    ---删除所有镜像
-f :通过 SIGKILL 信号强制删除一个运行中的容器。
-l :移除容器间的网络连接,而非容器本身。
-v :删除与容器关联的卷。
删除指定ID的镜像docker rmi 镜像ID/镜像名称 #删除指定ID的镜像,此镜像对应容器正启动镜像不能被删除,除非将容器全部关闭
docker start|stop|restart|pause|unpause 容器ID
docker images|grep '<none>'|awk '{print $3}'|xargs -n1 docker rmi 
删除所有dangling image(悬空镜像)docker rmi $(docker iamges -f dangling=true -q)
docker image prune
 
镜像打标签docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
TAG默认为latest
 
容器操作基础命令
启动容器docker run [选项]  [镜像名]  [shell命令] [参数]
docker run -it ** /bin/bash  ---以命令行模式进入该容器

--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: 绑定一个卷
退出容器并停止容器exit  
退出容器且容器不停止同时按三个键,ctrl+p+q 
启动已停止运行的容器docker start CONTAINER ID  
查看所有的容器docker ps -a  ---显示全部容器,包括退出状态的容器
docker ps -l  ---查询最后一次创建的容器
docker ps  -a -q  ---只显示容器ID
docker ps  -a -s ---显示容器大小
-a :显示所有的容器,包括未运行的。
-f :根据条件过滤显示的内容。
--format :指定返回值的模板文件。
-l :显示最近创建的容器。
-n :列出最近创建的n个容器。
--no-trunc :不截断输出。
-q :静默模式,只显示容器编号。
-s :显示总的文件大小。
后台运行 docker run -itd --name ** /bin/bash
在使用 -d 参数时,容器启动后会进入后台。此时想要进入容器,可以通过以下指令进入:
docker attach  <容器 ID>  ---使用exit退出后容器自动关闭
docker exec:推荐大家使用 docker exec 命令,因为此命令会退出容器终端,但不会导致容器的停止
 
重启停止的容器docker restart <容器 ID> 
停止容器docker stop <容器 ID> 
暂停/恢复容器中所有的进程docker pause/unpause  <容器 ID> 
导出和导入容器docker export 1e560fca3906 > ubuntu.tar  ---导出容器 1e560fca3906 快照到本地文件 ubuntu.tar
cat docker/ubuntu.tar | docker import - test/ubuntu:v1   ---将快照文件 ubuntu.tar 导入到镜像 test/ubuntu:v1:
docker import http://***   ---通过指定 URL 或者某个目录来导入
docker rm -f <容器 ID>  ---删除容器
docker container prune   ---清理掉所有处于终止状态的容器
for /f %i in ('dir /b C:\Users\Name.last\Desktop\11月第二周.xlsx') do echo %~zi
查看 WEB 应用程序日志docker logs [ID或者名字] 可以查看容器内部的标准输出
docker logs --tail 3 eudora-mysql3    查看eudora-mysql3容器最后3行日志
 
查看容器端口的映射情况docker port 可以查看指定 (ID 或者名字)容器的某个确定端口映射到宿主机的端口号 
检查 WEB 应用程序docker inspect 来查看 Docker 的底层信息。它会返回一个 JSON 文件记录着 Docker 容器的配置和状态信息 
查看容器内的进程docker top CONTAINER  
指定端口映射docker run  -p 81:80   ---本地端口81映射到容器80端口
docker run -p 192.168.0.100::80  ---本地IP:本地随机端口:容器端口,默认从32768开始
docker run  -p 192.168.0.100:83:80/udp  ---本机ip:本地端口:容器端口/协议,默认为tcp协议
docker run  -p 8080:80/tcp -p 8443:443/tcp -p 53:53/udp   ---一次性映射多个端口+协议
-s :向容器发送一个信号
杀掉一个运行中的容器docker kill 
docker system命令
prune 修剪命令docker image prune 命令只会清理 虚无镜像(没被标记且没被其它任何镜像引用的镜像)
docker image prune -a清理无容器使用的镜像
docker image prune -a --filter "until=24h"清理无容器使用的 24 小时前创建的镜像
docker container prune删除停止状态的容器
docker volume prune删除所有未使用的Docker卷——当前未连接到正在运行的容器的那些卷
docker network prune清理没有被容器未使用的网络
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值