我需要帮助来构建 CI 管道以仅构建 docker-image 并将其推送到 docker hub(所有都是私有存储库。
我的要求是:在 GitHub 存储库上,我有一个如下所示的 Docker 文件:
FROM tomcat:alpine
COPY snoop.war /opt/tomcat/tomcat1/webapps/
EXPOSE 8443
CMD /usr/local/tomcat/bin/cataline.bat run
在上面的 Dockerfile 中,我想直接从“jfrog”Artifactory 位置获取 war 文件而不是“snoop.war”,因为由于安全策略我无法将 war 文件上传到 GitHub 存储库中。
预期的 Dockerfile 应该是:
FROM tomcat:alpine
COPY https://internal-jfrog-artifacts/war_file/mw_snapshots/snoop.war
/opt/tomcat/tomcat1/webapps/
EXPOSE 8443
CMD /usr/local/tomcat/bin/cataline.bat run
您需要先下载文件。尝试使用以下
Dockerfile
. 进行构建
FROM tomcat:alpine
RUN apk add curl --no-cache \
&& mkdir -p /opt/tomcat/tomcat1/webapps \
&& curl -fsSL -o /opt/tomcat/tomcat1/webapps/snoop.war https://internal-jfrog-artifacts/war_file/mw_snapshots/snoop.war
EXPOSE 8443
CMD /usr/local/tomcat/bin/cataline.bat run