1

我需要帮助来构建 ci 管道以仅构建 docker-image 并将其推送到 docker hub(都是私有仓库。我的要求是,在 git repo 上,我有 Dockerfile 如下所示:

FROM tomcat:alpine
COPY snoop.war /opt/tomcat/tomcat1/webapps/
EXPOSE 8443
CMD /usr/local/tomcat/bin/cataline.bat run

在上面的 Dockerfile 中,而不是 "snoop.war" ,我想直接从 "jfrog" 工件位置获取战争文件,因为由于安全策略,我无法在 git repo 中上传战争文件。预期的 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

请协助,如果可以通过进行一些更改来实现?

4

1 回答 1

4

您需要先下载文件。尝试使用以下构建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
于 2020-09-22T15:15:37.747 回答