【云原生】Docker 实践(二):什么是 Docker 的镜像

**【Docker 实践】**系列共包含以下几篇文章:

😊 如果您觉得这篇文章有用 ✔️ 的话,请给博主一个一键三连 🚀🚀🚀 吧 (点赞 🧡、关注 💛、收藏 💚)!!!您的支持 💖💖💖 将激励 🔥 博主输出更多优质内容!!!

Docker 实践(二):什么是 Docker 的镜像

  • [1.使用 Docker 默认的镜像存储路径](#1.使用 Docker 默认的镜像存储路径)
  • [2.自定义 Docker 的镜像存储路径](#2.自定义 Docker 的镜像存储路径)

Docker 的镜像是一个模板,或者说其是一个只读文件。在该模板中包含应用和应用运行时所需要的依赖环境。Docker 的镜像采用的是分层的文件系统,每一次对镜像的修改将以 读写层 的形式增加到原来的只读文件的模板上。

Docker 默认的镜像存储路径是 /var/lib/docker,也可以是自定义其他路径。

1.使用 Docker 默认的镜像存储路径

bash 复制代码
docker info | grep "Docker Root Dir"

以上篇博客中拉取的 Nginx 镜像为例:

切换到 /var/lib/docker 目录下:

bash 复制代码
cd /var/lib/docker
bash 复制代码
find . -name 7383c266ef25*

2.自定义 Docker 的镜像存储路径

创建新的镜像存储路径 /data/docker,该路径用于保存 Docker 的镜像文件。

bash 复制代码
mkdir -p /data/docker

创建 Docker 守护进程的配置文件。

bash 复制代码
cd /etc/docker/
vi daemon.json

在 daemon.json 文件中输入以下内容。

bash 复制代码
{
    "graph": "/data/docker"
}

重新加载 Docker 的服务,并重启 Docker。

bash 复制代码
systemctl daemon-reload
systemctl restart docker

重启 Docker 发现报错了,改一下后缀名。

bash 复制代码
mv daemon.json daemon.conf

参考:《docker启动报错:Job for docker. service failed because the control process exited with error code》

再次尝试,并重新查看 Docker 的镜像存储路径,发现路径并没有变化!!!

显然不是后缀名导致的,并且改了后缀名,还导致了该文件可能没被加载!!!

通过查看日志发现报了一个错:

bash 复制代码
journalctl -u docker.service

搜了一下,原来是 Docker 高版本中弃用了该参数。参考:dockerd does not start debian

所以需要改一下配置:

bash 复制代码
{
    "data-root": "/data/docker"
}

再次查看 Docker 的镜像存储路径,发现路径变成了 /data/docker。

那么原来的镜像数据也没有了(留在了原来的文件夹下)。

相关推荐
长不大的杨瑞杰12 分钟前
OpenCode v2 会话可靠性实战:Snapshots、Compaction、Instructions 与 Formatters
人工智能·安全·云计算·软件工程·devops
杨浦老苏6 小时前
把项目管理搬回自己服务器:Windshift部署与避坑
docker·项目管理·群晖
木雷坞7 小时前
Baserow Docker部署:导入设备借用CSV,再用表单新增登记
运维·docker·容器
伊布拉西莫7 小时前
GitHub Actions 自动化发布指南
github·devops
wefg18 小时前
【Docker】基本指令
运维·docker·容器
牛马工作号9 小时前
Copyparty 轻量文件共享:Docker Compose 部署、权限与多协议使用全指南
运维·docker·容器
oioihoii10 小时前
Windows部署MySpeed自建测速服务:Docker运行后直接测速,再配置固定公网地址远程查看
运维·docker·容器
Jack N12 小时前
【Strapi 系列之八】二次开发 + 生产部署,Docker + PostgreSQL + Nginx 一把梭
nginx·docker·postgresql·strapi
研发小能13 小时前
DevOps 工具链怎么选?已有工具的企业,先评估整合能力
运维·devops
岁月宁静1 天前
一个 AI 项目从本地到上线,要经过哪些步骤?全流程讲清楚
python·docker·agent