当前位置: 首页 > 知识库问答 >
问题:

Docker:如何更改卷的挂载点?

吉和同
2023-03-14

我有一个在容器中运行的web应用程序。该应用程序允许用户上传文件。这些文件存储在Docker卷web_data1web_data2中。

做这件事的适当方法是什么?

Docker-compose.yml

version: "3"

volumes:
  web_data1:
  web_data2:

services:
  web:
    build:
      context: .
      dockerfile: .docker/Dockerfile
    image: web-image
    ports:
      - 80:80
      - 443:443
    volumes:
      - web_data1:/srv/app/web_data1_mountpoint
      - web_data2:/srv/app/web_data2_mountpoint

共有1个答案

谭泳
2023-03-14

这取决于您使用的图像。在docker-compose.yml中只需更改音量即可,如下所示:

volumes:
      - web_data1:/srv/app/web_data1_changed_mountpoint
      - web_data2:/srv/app/web_data2_changed_mountpoint

但我不知道,您的图像是如何处理目录的。可能映像内部的某些内容依赖于目录。

 类似资料:
  • 问题内容: 我最近创建了一个在Windows上的boot2docker上运行的mongodb docker实例。 不幸的是,在尝试kitematic的过程中,我意外地从mongo容器中删除了该卷,并且无法再访问我的数据。 mongo实例似乎创建了一个新卷,而旧卷现在仍悬空(孤立)并且未安装在任何容器中。 有什么办法可以恢复吗? 问题答案: 感谢您的答复,它使我处于正确的轨道,我设法使用以下命令启动

  • 问题内容: 我正在运行一个Jenkins集群,其中在Master和Slave中,它们都作为Docker容器运行。 主机是在MacOS上运行的最新的boot2docker VM。 为了使Jenkins能够使用Docker执行部署,我将docker.sock和docker客户端从主机安装到Jenkins容器,如下所示: 在将卷装载到Jenkins容器中运行的Docker容器时,我遇到了问题。例如,如果

  • 我试图将我的源文件挂载到位于/var/dynamo的docker目录中。我希望能够在本地运行Docker,并在工作时使用我的本地文件。 使用run命令: Docker版本为1.9.1

  • 问题内容: 在Windows主机下安装Docker卷对我来说是一个巨大的痛苦,而且我无法使其正常工作。 目前,我得到了以下简单的Dockerfile: 当我从中构建图像并启动容器时 容器正常启动。 但是当我尝试装载一个卷时, 将显示以下消息: 该目录肯定存在于容器中,尝试其他目录不会更改结果。在主机端目录前添加斜杠也无济于事。() 例如,如何安装到? 事实证明,容器端目录必须为空,因为它有一个子目

  • 我正在尝试使用docker-machine和docker-compose。文件docker-compose.yml的定义如下: 运行时,一切正常,直到尝试执行该命令并产生错误: 无法启动容器B58E2DFA503B696417C1C3F49E2714086D4E9999BD71915A53502CB6EF43936D:[8]系统错误:exec:“./run_web.sh”:stat./run_we

  • 问题内容: 我刚刚检查了/ var / lib / docker / volumes文件夹,发现该文件夹正以名为Docker UUID的文件夹爆炸,每个文件夹都包含一个config.json文件,其内容与 哪里 是指向主机上的文件夹的路径,该主机已通过-v开关挂载到Docker容器上。我有这样的文件夹可以追溯到我对Docker进行实验的开始,即大约3周前。 有问题的容器很久以前就已停止并且dock