Ubuntu Docker存储卷如何管理

145
2025/3/26 18:32:48
栏目: 云计算
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Ubuntu中管理Docker存储卷可以通过以下几种方式进行:

创建数据卷

  • 使用docker volume create命令:可以手动创建数据卷。例如,创建一个名为my_volume的数据卷:

    docker volume create my_volume
    
  • 在运行容器时创建:也可以在启动容器时使用-v--mount参数来创建数据卷。例如,运行一个容器并将数据卷挂载到容器的/data目录:

    docker run -d -v my_volume:/data my_image
    

挂载数据卷

  • 挂载宿主机的目录到容器:使用-v标记指定挂载一个本地主机的目录到容器中。例如,启动一个数据库备份的容器,并将宿主机的/opt/backup-x-files目录挂载到容器的/app/backup-x-files目录:

    docker run -d --name backup-x --restart=always -p 9977:9977 -v /opt/backup-x-files:/app/backup-x-files jeessy/backup-x
    
  • 使用--volumes-from参数:该参数允许在启动一个容器时挂载另一个容器中的数据卷。这在多个容器之间共享数据时非常有用。例如,创建并运行一个名为data_container的容器,它拥有一个或多个数据卷,然后在新的容器中使用--volumes-from挂载data_container中的数据卷:

    docker run -d --name=data_container -v my_volume:/app/data my_image
    docker run -d --volumes-from data_container -v /local/path:/container/path new_container
    

备份和恢复数据卷

  • 备份数据卷:可以使用--volumes-from标志创建一个挂载数据卷容器的容器,并从本地主机挂载当前目录的备份目录。例如,将dbdata卷备份为本地的/backup/backup.tar

    docker run --rm --volumes-from dbdata -v $(pwd):/backup ubuntu tar cvf /backup/backup.tar /dbdata
    
  • 恢复数据卷:首先创建一个带有数据卷的容器(如dbdata2),然后创建另一个容器挂载dbdata2的容器,并使用untar解压备份文件到挂载的容器卷中。例如,恢复数据到容器:

    docker run -v /dbdata --name dbdata2 ubuntu /bin/bash
    docker run --rm --volumes-from dbdata2 -v $(pwd):/backup busybox tar xvf /backup/backup.tar
    

删除数据卷

  • 删除不再使用的数据卷可以通过docker volume rm命令来实现。例如,删除名为my_volume的数据卷:

    docker volume rm my_volume
    

以上就是在Ubuntu系统中管理Docker存储卷的基本方法,包括创建、挂载、备份恢复以及删除数据卷。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: Ubuntu下phpstorm如何调试代码