首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >docker合成文件不工作:不允许复制其他属性副本

docker合成文件不工作:不允许复制其他属性副本
EN

Stack Overflow用户
提问于 2017-04-23 09:20:29
回答 2查看 36.8K关注 0票数 29

docker版本: 17.03.1-ce

从入门教程中尝试让docker-compose.yml正常工作。

代码语言:javascript
复制
version: "3"
   services:
     web:
       image: tuhina/friendlyhello:2.0
     deploy:
       replicas: 5
       resources:
         limits:
           cpus: "0.1"
           memory: 50M
      restart_policy:
        condition: on-failure
      ports:
        - "80:80"
      networks:
        - webnet
    networks:
      webnet:

获取此错误:

代码语言:javascript
复制
replicas Additional property replicas is not allowed

我打错了什么?

谢谢。

编辑: docker-compose版本1.11.2,build dfed245

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-04-23 09:51:06

缩进在docker-compose.yml中很关键。按照您设置的方式,"deploy“是一个服务,这并不是故意的。deploy部分旨在指定有关如何部署"web“服务的信息。下面的代码允许我成功运行docker-compose updocker stack deploy web --compose-file docker-compose.yml

代码语言:javascript
复制
version: "3"

services:
  web:
    image: tuhina/friendlyhello:2.0
    deploy:
      replicas: 5
      resources:
        limits:
          cpus: "0.1"
          memory: '50M'
      restart_policy:
        condition: on-failure
    ports:
      - "80:80"
    networks:
      - webnet

networks:
  webnet:
票数 54
EN

Stack Overflow用户

发布于 2022-02-08 07:05:37

这发生在我身上,因为我使用的是docker-compose版本2,而我的docker-compose.yml文件是版本1。

我的docker-compose.yml文件最初是这样的:

代码语言:javascript
复制
web:
    image: nginx
    restart: always 

所以当我运行docker-compose up时,我得到了这个错误:

代码语言:javascript
复制
(root) Additional property web is not allowed

我降级到docker-compose版本1,如下所示:

代码语言:javascript
复制
docker-compose disable-v2

现在它起作用了。为了让它在v2上工作,首先我启用了v2:

代码语言:javascript
复制
docker-compose enable-v2

然后我像这样更新了我的docker-compose.yml:

对于docker-compose v2,web不能是顶部/最外层的值。因此,我将其更改为:

代码语言:javascript
复制
services:
  web:
    image: nginx
    restart: always 

请注意,要

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43566427

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档