天天看点

【经验总结】Docker 使用笔记

0x00 前言

平时在使用 Docker 时,经常会碰到忘记相关命令的情况,因此平时忘记一个就会记录一个,经过多年的记录,Docker 相关的笔记已经记录了不少。

最近在看代码审计的时候又提到了 Docker,正好借着这个机会好好的把原来记录的比较乱的 Docker 笔记整理一下。

如果你也面临过「在使用 Docker 时,时不时就会忘记某条命令」的情况,那么我相信本篇文章应该会对你有所帮助。

0x01 安装

或者

在命令中输入以下命令,如果输出 helloword 表示 Docker 安装成功。

【经验总结】Docker 使用笔记

国内加速地址如下:

0x02 使用

查看镜像层级关系

开启指定容器,这里的容器名为 Web

启动所有容器

docker 创建的

docker-compose 创建的

container_name 需要在 docker-compose.yml 文件中查看

export\import 导入导出

save\load 导入导出

export\import 与 save\load 的区别:

export\import 导出的镜像文件大小要小于 save\load 导出的镜像

export\import 是根据容器拿到的镜像,再导入时会丢失镜像所有的历史,所以无法进行回滚操作;而 save\load 的镜像,没有丢失镜像的历史,可以回滚到之前的层。

a、停止容器

b、 停止 docker 服务(systemctl stop docker)

c、 修改这个容器的 hostconfig.json 文件中的端口(原帖有人提到,如果 config.v2.json 里面也记录了端口,也要修改)

d、启动docker服务(systemctl start docker)

e、启动容器

启动全新的容器,该命令会在后台运行容器,并返回容器ID

对于现有的容器

0x03 卸载

停止指定容器

停止所有容器

删除指定容器

删除所有已退出的容器

删除所有已停止的容器

删除所有正在运行和已停止的容器

删除所有容器,没有任何标准

Docker 资源清理

删除所有镜像

【经验总结】Docker 使用笔记