在.drone.yml中为Docker插件传递构建参数的问题
Drone CI Docker插件传递构建参数的正确配置
没问题,我帮你把本地Docker构建的参数传递逻辑迁移到Drone CI的Docker插件里。
你本地执行的docker build命令通过--build-arg传递了SERVER_CONTEXT_PATH=mywar,在Drone的Docker插件中,我们可以用build_args字段来实现完全相同的效果。
以下是完整的Drone配置片段示例:
kind: pipeline type: docker name: default steps: - name: build-docker-image image: plugins/docker settings: # 替换成你的镜像仓库地址,若只是本地构建可省略repo字段 repo: your-image-repo/com-ifx tags: latest # 这里传递构建参数,完全对应本地的--build-arg参数 build_args: - SERVER_CONTEXT_PATH=mywar # 若镜像仓库需要认证,可添加以下配置(按需启用) # username: # from_secret: docker_username # password: # from_secret: docker_password
关键说明:
build_args是一个数组,每个元素采用KEY=VALUE的格式,和docker build --build-arg的参数写法完全对应- 这个配置会让Drone在执行Docker构建时,自动带上
--build-arg SERVER_CONTEXT_PATH=mywar参数,和你本地构建的行为完全一致,最终war文件会被复制为mywar.war - 如果有多个构建参数,只需要在
build_args数组中继续添加对应的KEY=VALUE项即可
内容的提问来源于stack exchange,提问作者kosta
相关产品推荐
相关产品推荐

