docker - Docker Image:如何添加 Maven 依赖项以供离线使用?
问题描述
我想问一下如何将 Maven 项目依赖项添加(复制)到 Maven Docker 映像(https://hub.docker.com/_/maven),该映像在沙箱中的 CI/CD 期间运行而无法访问互联网?
我尝试了以下方法,但似乎不起作用。依赖项存储在 ~/.m2 目录中。将依赖文件夹复制到 Maven 映像或使用以下命令是更好的方法:在 Dockerfile 中复制项目 .pom 文件的命令?
RUN mvn -B -f /tmp/pom.xml -s /usr/share/maven/ref/settings-docker.xml dependency:resolve
非常感谢您的任何建议。
# Pull base image.
FROM library/maven
############################
# Install Dependencies
#COPY pom.xml /tmp/pom.xml
RUN pwd
ADD repository /usr/share/maven/ref/repository
#RUN mvn -B -f /tmp/pom.xml -s /usr/share/maven/ref/settings-docker.xml dependency:resolve
#RUN mvn clean install -o
#RUN mvn dependency:go-offline
# Define default command.
#CMD ["bash"]
############################
解决方案
您可以在离线模式下运行 maven mvn -o install
推荐阅读
- python - Scrapy 使用 getall() 获取 xPath 属性
- git - 在 git 上设置 umask 权限新分支
- c# - T4 模板在构建期间未转换
- .net - 是否有可能以及如何从 dotnet 4.6 应用程序使用 Grpc.Core 并在没有身份验证的情况下使用 https
- reactjs - 如何导入material-ui组件?
- html - 如何在 Emacs 的 Org 模式下在 Source Block 的“#+RESULTS”预览输出周围添加“#+ATTR_HTML”?
- javascript - 如何在 React 中重新加载表中的数据
- azure - Azure VMSS 自定义脚本扩展错误 - 无法下载脚本文件
- swift - 在特定内存地址打印对象描述
- flutter - Flutter permission_handler 重新请求权限