在使用 Docker 运行 CentOS 容器时,一个常见问题是:容器一旦被删除,其内部的数据也会随之丢失。为了解决这个问题,我们需要使用 容器存储卷(Volume) 技术,将容器内的数据持久化到宿主机上。本文将手把手教你如何在 CentOS 容器中正确使用存储卷,即使你是 Docker 新手也能轻松上手!
容器存储卷是 Docker 提供的一种机制,用于将宿主机上的目录或文件挂载到容器内部,从而实现数据持久化和容器间数据共享。即使容器被删除,只要存储卷还在,数据就不会丢失。
当你运行一个基于 CentOS 的 Web 服务器、数据库或日志服务时,配置文件、数据库文件或日志通常会写入容器内部。但容器是临时性的,重启或重建后这些数据就没了。通过使用 CentOS容器存储卷,你可以:
下面我们将通过一个具体例子,演示如何将宿主机的 /data/centos-app 目录挂载到 CentOS 容器的 /app 目录中。
mkdir -p /data/centos-appecho "Hello from persistent volume!" > /data/centos-app/welcome.txt 使用 -v 参数将宿主机目录挂载到容器内:
docker run -it \ -v /data/centos-app:/app \ --name my-centos-container \ centos:7 \ /bin/bash 参数说明:
-v /data/centos-app:/app:将宿主机的 /data/centos-app 挂载到容器的 /app--name my-centos-container:给容器起个名字,方便管理centos:7:使用 CentOS 7 镜像在容器内部执行以下命令:
cat /app/welcome.txt 你应该会看到输出:Hello from persistent volume!,说明挂载成功!
在容器中创建一个新文件:
echo "Data saved in container!" > /app/container-data.txt 然后退出容器(输入 exit),再删除容器:
docker rm my-centos-container 最后检查宿主机目录:
ls /data/centos-appcat /data/centos-app/container-data.txt 你会发现 container-data.txt 依然存在!这证明了 CentOS持久化存储 已经生效。
除了绑定挂载(bind mount),Docker 还支持命名卷(named volume):
# 创建命名卷docker volume create my-centos-volume# 使用命名卷运行容器docker run -it -v my-centos-volume:/app centos:7 /bin/bash 命名卷由 Docker 管理,路径通常在 /var/lib/docker/volumes/ 下,适合生产环境使用。
通过本文,你已经学会了如何在 CentOS 容器中使用 Docker存储卷 实现数据持久化。无论你是开发、测试还是部署应用,掌握 容器数据挂载 技术都至关重要。记住:容器是短暂的,但数据必须持久!
现在,你可以安全地运行你的 CentOS 容器,并确保关键数据不会因容器销毁而丢失。快去试试吧!
关键词回顾:CentOS容器存储卷、Docker存储卷、CentOS持久化存储、容器数据挂载。
本文由主机测评网于2025-12-12发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025126833.html