在.drone.yml中为docker插件传递构建参数

在.drone.yml中为docker插件传递构建参数,docker,drone,docker-build,Docker,Drone,Docker Build,我有下面的Dockerfile FROM myabse ARG SERVER_CONTEXT_PATH=com-ifx COPY ./hue-com-ifx-front/target-server-side/com-ifx.war /opt/tomcat/webapps/${SERVER_CONTEXT_PATH}.war CMD ["/opt/tomcat/bin/catalina.sh", "run"] 当我尝试像这样构建docker图像时 sudo docker build--bu

我有下面的Dockerfile

FROM myabse

ARG SERVER_CONTEXT_PATH=com-ifx

COPY ./hue-com-ifx-front/target-server-side/com-ifx.war /opt/tomcat/webapps/${SERVER_CONTEXT_PATH}.war

CMD ["/opt/tomcat/bin/catalina.sh", "run"]
当我尝试像这样构建docker图像时

sudo docker build--build arg SERVER\u CONTEXT\u PATH=mywar-t com ifx:latest
并使用
sudo docker run-p 8080:8080 com ifx:latest运行映像

复制的war文件是
mywar.war

我在
.drone.yml

docker:
    image: plugins/docker
    registry: registry.paas.workslan
    repo: registry.paas.workslan/ifx-prestaging/com-ifx
    build_args: 
      - SERVER_CONTEXT_PATH=mywar
    secrets: [ docker_username, docker_password ]
    tags: latest
    when:
      branch: ticket-*
  docker_publish_feature_branch:
    image: plugins/docker
    registry: registry.paas.workslan
    repo: registry.paas.workslan/ifx-prestaging/com-ifx
    secrets: [ docker_username, docker_password ]
    tags: ${DRONE_COMMIT_BRANCH}
    when:
      branch: [ticket-*]

但是战争的名字总是
com ifx.war
。我希望它是
mywar.war
。在
.drone.yml

中,我应该怎么做?在我的例子中,我使用了您脚本中的两个更改。它们是:

docker:
    image: plugins/docker
    registry: registry.paas.workslan
    repo: registry.paas.workslan/ifx-prestaging/com-ifx
    build_args: 
      - SERVER_CONTEXT_PATH=mywar
    secrets: [ docker_username, docker_password ]
    tags: latest
    when:
      branch: ticket-*
  docker_publish_feature_branch:
    image: plugins/docker
    registry: registry.paas.workslan
    repo: registry.paas.workslan/ifx-prestaging/com-ifx
    secrets: [ docker_username, docker_password ]
    tags: ${DRONE_COMMIT_BRANCH}
    when:
      branch: [ticket-*]
在Dokerfile中,我使用$VARIABLE或“$VARIABLE”格式来引用变量

在.drone.yml文件中,变量指定为

从环境生成参数:[变量]


这对我很有用

该线程看起来很旧,但可能对遇到此问题的人有所帮助: