如何使用 compose 将 docker 卷安装到我的 docker 项目中?

2024-04-29

我有一个 Maven 项目。我正在 Docker 内运行 Maven 构建。但问题是,每次运行它时,它都会下载所有 Maven 依赖项,并且不会缓存任何 Maven 下载。

我找到了一些解决方法,将本地 .m2 文件夹挂载到 Docker 容器中。但这将使构建依赖于本地设置。我想做的是创建一个卷(长期存在)并将该卷链接/安装到.m2Docker 内的文件夹。这样,当我第二次运行 Docker 构建时,它就不会下载所有内容。而且它不会依赖于环境。

我该如何使用 docker-compose 来做到这一点?


在不知道你的确切配置的情况下,我会使用这样的东西......

version: "2"

services:
  maven:
    image: whatever
    volumes:
      - m2-repo:/home/foo/.m2/repository

volumes:
  m2-repo:

这将创建一个名为的数据卷m2-repo映射到/home/foo/.m2/repository(根据需要调整路径)。数据量将在 Docker Compose 项目的启动/关闭/启动/停止过程中继续存在。

您可以通过运行类似的命令来删除该卷docker-compose down -v,这将破坏容器和卷。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 compose 将 docker 卷安装到我的 docker 项目中? 的相关文章

随机推荐