在使用 Docker 运行 Ubuntu 容器时,我们经常会遇到一个问题:容器一旦被删除,其中的数据也会随之消失。为了解决这个问题,Docker 提供了“存储卷”(Volume)机制,实现容器持久化存储。本教程将手把手教你如何在 Ubuntu 系统中管理 Docker 容器的存储卷,即使是零基础的小白也能轻松上手。
Docker 存储卷是 Docker 用来持久化数据的一种方式。它独立于容器生命周期存在,即使容器被删除,卷中的数据依然保留。这对于数据库、配置文件、日志等需要长期保存的数据非常关键。
首先,确保你的 Ubuntu 系统已安装 Docker。如果尚未安装,请运行以下命令:
sudo apt updatesudo apt install -y docker.iosudo systemctl start dockersudo systemctl enable docker
安装完成后,可通过 docker --version 验证是否成功。
这是最推荐的方式,由 Docker 自动管理存储位置。
1. 创建一个名为 mydata 的卷:
docker volume create mydata
2. 启动 Ubuntu 容器并挂载该卷到 /data 目录:
docker run -it --name ubuntu-container \ -v mydata:/data \ ubuntu:latest /bin/bash
现在,你在容器内的 /data 目录下创建的任何文件都会被持久化保存在 mydata 卷中。
这种方式直接将宿主机的某个目录挂载到容器中,适合开发调试。
mkdir -p ~/myappdocker run -it --name ubuntu-bind \ -v ~/myapp:/app \ ubuntu:latest /bin/bash
此时,宿主机的 ~/myapp 目录与容器内的 /app 目录完全同步。
你可以使用以下命令来管理 Docker 卷:
docker volume ls —— 列出所有卷docker volume inspect mydata —— 查看卷详细信息docker volume rm mydata —— 删除指定卷(需先停止使用该卷的容器)假设你想运行一个 MySQL 容器,并确保数据库数据不会因容器重启而丢失:
docker volume create mysql-datadocker run -d --name mysql-db \ -e MYSQL_ROOT_PASSWORD=123456 \ -v mysql-data:/var/lib/mysql \ mysql:8.0
这样,即使你删除并重新创建 MySQL 容器,只要挂载同一个 mysql-data 卷,数据就会完整保留。
通过本教程,你已经掌握了在 Ubuntu 系统中使用 Docker 存储卷进行Ubuntu容器存储卷管理的核心技能。无论是使用命名卷还是绑定挂载,都能有效实现Docker数据卷管理和容器持久化存储。希望这篇Ubuntu Docker教程能帮助你构建更稳定、可靠的应用环境!
提示:生产环境中建议优先使用命名卷,因其由 Docker 统一管理,路径更安全且便于迁移。
本文由主机测评网于2025-12-19发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025129794.html