gpt4 book ai didi

docker 撰写 : Change volume mapping from a docker volume to a folder on the server

转载 作者:行者123 更新时间:2023-12-04 19:25:45 27 4
gpt4 key购买 nike

我有一个使用 docker-compose 在 Ubuntu 服务器上运行的 Jira 实例。
我最初通过将 jira 安装文件夹映射到名为 jiravolume 的 docker 卷来设置它。

volumes:
- jiravolume:/var/atlassian/application-data/jira
为了更轻松地访问数据,我希望将这个文件夹直接放在 Ubuntu 服务器上的文件夹中。
首先,在性能/安全性方面有什么区别吗?
如果没有,实现这一目标的步骤是什么?
假设我希望文件夹中的数据具有如下路径(相对于 docker-compose 文件): ./persist/jira/installfolder我是否需要先在服务器上创建文件夹结构,然后将 docker-compose 更改为:
volumes:
- ./persist/jira/installfolder:/var/atlassian/application-data/jira
数据现在是自动复制到新文件夹中还是仍然在旧卷中,所以现在 jira 指向一个空文件夹?
太感谢了

最佳答案

不,这不起作用,docker 将为您创建一个漂亮的空新文件夹。
如果在 linux 上,您的卷应该存储在这里:/var/lib/docker/volumes你可以:

  • 创建 ./persist/jira/installfolder
  • 把文件复制过来。那么
  • 您必须更改文件的权限。和
  • 进行您在 docker-compose.yaml 中建议的更改
  • 重新启动 docker-compose。 (docker-compose down && docker-compose up 应该足够了)

  • 提个醒:
    如果该路径 ./persist/jira/installfolder在您的 docker context 内您可能需要检查您的 Dockerfile查看任何 COPYADD陈述。例如,如果您有 COPY . .在某个地方,如果你重建它,你就会冒着将卷复制到镜像中的风险。
    在这种情况下:要么更改这些语句,要么将您的路径添加到 .dockerignore

    关于 docker 撰写 : Change volume mapping from a docker volume to a folder on the server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71240253/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com