docker命令:docker-stack相关操作、使⽤inspect命令查看镜像
详细信息。。。
⼀、docker-stack相关操作
docker stack deploy --l stack_name //启动stack
docker stack down service_name //关闭stack
docker stack ls // 查看stack下service列表
docker stack services service_name  //查看指定service的所有容器
docker stack ps service_name // 查看指定service的所有容器运⾏状态详情
⼆、使⽤ inspect 命令查看镜像详细信息
  通过 docker inspect 命令,我们可以获取镜像的详细信息,其中,包括创建者,各层的数字摘要等。
  使⽤ docker inspect docker镜像名:docker镜像tag
docker inspect docker.io/mysql:5.7
// docker.io/mysql  -  镜像名
// 5.7  -  镜像tag
  可以看到该镜像的具体信息,⽐如上⾯的架构:arm64
  docker inspect 返回的是 JSON 格式的信息,如果您想获取其中指定的⼀项内容,可以通过 -f 来指定,如获取镜像⼤⼩:
docker inspect -f {{".Size"}} docker.io/mysql:5.7
  就可以直接获取到镜像的size。再⽐如下⾯获取镜像架构:
三、docker rm & docker rmi & docker prune 清理删除镜像的差异
docker rm :删除⼀个或多个容器
docker rmi :  删除⼀个或多个镜像
docker prune:⽤来删除不再使⽤的 docker 对象
1、docker rm命令:
docker rm [OPTIONS] CONTAINER []
//  OPTIONS说明:
-f : 通过SIGKILL信号强制删除⼀个运⾏中的容器
-l : 移除容器间的⽹络连接,⽽⾮容器本⾝
-v : 删除与容器关联的卷
// 强制删除容器db01、db02:
docker rm -f db01 db02
nginx停止命令
// 移除容器 my-nginx 对容器db01的连接,连接名db01:
docker rm -l db01
// 删除容器 my-nginx,并删除容器挂载的数据卷:
docker rm -v my-nginx
2、docker rmi 命令:
docker rmi [OPTIONS] IMAGE []
//  OPTIONS说明:
-f : 强制删除
--no-prune : 不移除该镜像的过程镜像,默认移除
// 强制删除本地镜像 mongo:3.2
docker rmi -f mongo:3.2
3、docker prune 命令
// 删除所有未被 tag 标记和未被容器使⽤的镜像:
docker image prune
/
/ 删除所有未被容器使⽤的镜像:
docker image prune -a
// 删除所有停⽌运⾏的容器:
docker container prune
// 删除所有未被挂载的卷:
docker volume prune
// 删除所有⽹络:
docker network prune
// 删除 docker 所有资源:
docker system prune
4、清理删除镜像
  通过如下两个都可以删除镜像:
docker rmi [image]
docker image rm [image]
(1)⽀持的⼦命令如下:
-f, -force: 强制删除镜像,即便有容器引⽤该镜像;
-no-prune: 不要删除未带标签的⽗镜像;
(2)当同⼀个镜像拥有多个标签时,执⾏ docker rmi 命令,只是会删除了该镜像众多标签中您指定的标签⽽已,并不会影响原始的那个镜像⽂件。
(3)如果某个镜像不存在多个标签,当且仅当只有⼀个标签时,执⾏删除命令时,您就要⼩⼼了,这会彻底删除镜像。
(4)通过 ID 删除镜像:除了通过标签名称来删除镜像,我们还可以通过制定镜像 ID, 来删除镜像,如:docker rmi ee7cbd482336,⼀旦制定了通过 ID 来删除镜像,它会先尝试删除所有指向该镜像的标签,然后在删除镜像本⾝。
(5)删除镜像的限制:删除镜像很简单,但也不是我们何时何地都能删除的,它存在⼀些限制条件。当通过该镜像创建的容器未被销毁时,镜像是⽆法被删除的,因为有容器正在引⽤他。除⾮通过添加 -f ⼦命令,也就是强制删除,才能移除掉该镜像。但是,我们⼀般不推荐这样暴⼒的做法,正确的做法应该是:
1. 先删除引⽤这个镜像的容器;
2. 再删除这个镜像;
(6)清理镜像:我们在使⽤ Docker ⼀段时间后,系统⼀般都会残存⼀些临时的、没有被使⽤的镜像⽂件,可以通过以下命令进⾏清理:
docker image prune
  它⽀持的⼦命令有:
-a, --all: 删除所有没有⽤的镜像,⽽不仅仅是临时⽂件;
-f, --force:强制删除镜像⽂件,⽆需弹出提⽰确认;
  另外,执⾏完 docker image prune 命令后,还会告诉我们释放了多少存储空间!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。