You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker Swarm部署报错Additional property pull_policy is not allowed咨询

问题原因

pull_policy属于Docker Compose工具的专属配置字段,仅在使用docker-compose命令本地启动项目时生效。虽然你在配置文件中声明了3.9的高版本号,但Docker Swarm的stack部署逻辑从未支持该字段,执行docker stack deploy时解析配置就会抛出未知属性的错误。

解决方法

方案1:直接调整配置和部署命令

  1. 删除docker-compose.yml中chat-app-api服务下的pull_policy: always配置行
  2. 如果需要保留每次部署强制拉取最新镜像的逻辑,在部署命令中添加--resolve-image always参数即可,效果和原pull_policy: always完全一致:
docker stack deploy -c docker-compose.yml -c docker-compose.prod.yml --resolve-image always chatappapi

方案2:拆分多环境配置

如果你的docker-compose.yml需要同时兼容本地开发和Swarm生产部署,可将仅开发环境需要的pull_policy配置挪到本地开发专用的覆盖配置文件(例如docker-compose.dev.yml)中,基础配置文件不保留该字段。部署到Swarm时仅加载基础配置和生产覆盖配置,即可避开字段校验错误。


内容的提问来源于stack exchange,提问作者Labrador

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 18:09:01