我正在尝试使用撰写文件来部署我的坞库堆栈。当我使用撰写文件版本3+进行部署时,部署工作非常好。但是,当我试图使用2.4版本或更低版本时,我会得到以下错误:unsupported Compose file version: 2.4
我需要使用2.4版本,因为版本3和更高版本不支持我的容器所需的几个参数(如cpuset和runtime)。
我的对接版本为19.03.6,对接-合成版本为1.25.4。
是否有任何方法在Docker 19.03.6上使用旧版本的compose文件进行部署?是我遗漏了什么,还是最近的对接版本不再支持旧的组合文件?
更新
结果显示,docker 19.03.6只支持部署中的3+版本。因此,我只能使用版本3+,它在CPU使用设置方面不能提供与V2.4相同的灵活性。在这种情况下(当您需要像cpuset和runtime这样的参数时),唯一的解决方案是手动运行容器或移动到类似Kubernetes的地方。
下面是撰写文件的示例:
版本3.7 (工作)
version: '3.7'
services:
mongo:
image: mongo
volumes:
- ~/ProcessingServerData/mongodb/db:/data/db
- ~/ProcessingServerData/mongodb/configdb:/data/configdb
networks:
- proc-net
mongo-express:
image: mongo-express
depends_on:
- mongo
ports:
- 8081:8081
networks:
- proc-net
visualizer:
image: dockersamples/visualizer:stable
ports:
- 8082:8080
volumes:
- /var/run/docker.sock:/var/run/docker.sock
networks:
- proc-net
deploy:
placement:
constraints: [node.role == manager]
networks:
proc-net:
driver: overlay
attachable: true2.4版(不工作)
version: '2.4'
services:
mongo:
image: mongo
volumes:
- type: bind
source: ~/ProcessingServerData/mongodb/db
target: /data/db
- type: bind
source: ~/ProcessingServerData/mongodb/configdb
target: /data/configdb
networks:
- proc-net
deploy:
resources:
cpuset: 0,1
mongo-express:
image: mongo-express
depends_on:
- mongo
ports:
- 8081:8081
networks:
- proc-net
deploy:
resources:
cpuset: 0,1
visualizer:
image: dockersamples/visualizer:stable
ports:
- 8082:8080
volumes:
- type: bind
source: /var/run/docker.sock
target: /var/run/docker.sock
networks:
- proc-net
deploy:
resources:
cpuset: 0,1
placement:
constraints: [node.role == manager]
networks:
proc-net:
driver: overlay发布于 2020-03-05 14:50:07
deploy配置选项在2.4中不受支持,您需要将该文件更改为此文件
version: '2.4'
services:
mongo:
image: mongo
volumes:
- type: bind
source: ~/ProcessingServerData/mongodb/db
target: /data/db
- type: bind
source: ~/ProcessingServerData/mongodb/configdb
target: /data/configdb
networks:
- proc-net
mongo-express:
image: mongo-express
depends_on:
- mongo
ports:
- 8081:8081
networks:
- proc-net
visualizer:
image: dockersamples/visualizer:stable
ports:
- 8082:8080
volumes:
- type: bind
source: /var/run/docker.sock
target: /var/run/docker.sock
networks:
- proc-net
networks:
proc-net:
driver: overlay发布于 2020-03-05 15:47:18
https://stackoverflow.com/questions/60544458
复制相似问题