Linux环境下修改Docker的工作目录

简介: 本文介绍了Linux环境下如何更改Docker的工作目录,从而避免docker占用过多的系统盘空间。

修改Docker的工作目录

1. 需求背景

Docker的默认工作目录在 /var/lib/docker,镜像文件、容器日志等文件将会被默认存放在系统盘,这将会消耗本就不大的系统盘存储空间。

本文记录了把docker的工作目录从 /var/lib/docker 修改至 /data/docker 的过程。

2. 修改过程

停止Docker服务:

sudo systemctl stop docker

备份原工作目录下的文件,防止迁移过程中丢失或损坏文件:

# 后续迁移过程中如有问题,可使用备份的文件恢复数据
sudo tar -czvf <path>/backup.tar.gz /var/lib/docker

创建新的工作目录。以后docker相关的镜像、日志文件等都会存储在此目录中。

sudo mkdir -p /data/docer

复制Docker的数据到新的工作目录:

sudo cp -r /var/lib/docker/* /data/docker

修改Docker配置文件,将新的工作目录路径配置到文件中:

sudo vim /etc/docker/daemon.json
# 注意冒号后面的空格,有其他配置注意末尾加上逗号
{
  "data-root": "/data/docker"
}

启动Docker服务:

sudo systemctl start docker

验证Docker工作目录:

[root@localhost ~]# sudo docker info | grep Dir
 Docker Root Dir: /data/docker

 # 工作目录修改成功

删除原本的docker文件:

sudo rm -rf /var/lib/docker

增加软连接,便于之后的排障或第三方组件适配:

sudo ln -s /data/docker /var/lib/docker
# 这会显示出 /data/docker 下的文件
ls /var/lib/docker
相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
目录
相关文章
|
10天前
|
Web App开发 搜索推荐 Unix
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
【10月更文挑战第21天】Linux系统之MobaXterm远程连接centos的GNOME桌面环境
98 4
Linux系统之MobaXterm远程连接centos的GNOME桌面环境
|
2天前
|
网络协议 Linux
linux系统重要文件目录
本文介绍了Linux系统中的重要目录及其历史背景,包括根目录、/usr、/etc、/var/log和/proc等目录的结构和功能。其中,/etc目录下包含了许多关键配置文件,如网卡配置、DNS解析、主机名设置等。文章还详细解释了各目录和文件的作用,帮助读者更好地理解和管理Linux系统。
10 2
|
3天前
|
关系型数据库 MySQL Docker
docker环境下mysql镜像启动后权限更改问题的解决
在Docker环境下运行MySQL容器时,权限问题是一个常见的困扰。通过正确设置目录和文件的权限,可以确保MySQL容器顺利启动并正常运行。本文提供了多种解决方案,包括在主机上设置正确的权限、使用Dockerfile和Docker Compose进行配置、在容器启动后手动更改权限以及使用 `init`脚本自动更改权限。根据实际情况选择合适的方法,可以有效解决MySQL容器启动后的权限问题。希望本文对您在Docker环境下运行MySQL容器有所帮助。
9 1
|
8天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
29 2
|
9天前
|
消息中间件 Linux RocketMQ
在Red Hat Enterprise Linux 9上使用Docker快速安装并部署
通过以上步骤,你可以在Red Hat Enterprise Linux 9上使用Docker快速安装并部署RocketMQ。这种方法不仅简化了安装过程,还提供了一个灵活的环境来管理和扩展消息队列系统。RocketMQ作为一款高性能的分布式消息系统,通过Docker可以实现快速部署和高效管理。
22 3
|
6天前
|
Linux UED iOS开发
|
11天前
|
Ubuntu 应用服务中间件 Linux
Linux下搭建Nginx环境的搭建
Linux下搭建Nginx环境的搭建
|
11天前
|
Linux 开发工具 Perl
Linux命令替换目录下所有文件里有"\n"的字符为""如何操作?
【10月更文挑战第20天】Linux命令替换目录下所有文件里有"\n"的字符为""如何操作?
27 4
|
12天前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
121 2
|
12天前
|
存储 Docker 容器
docker中挂载现有目录作为数据卷
【10月更文挑战第14天】
13 1