docker stack deploy获取错误代码3和“驱动程序名称:如果指定了驱动程序名称”

时间:2017-10-05 22:55:54

标签: docker

我正在关注Docker教程和第3部分:服务(link

当我运行此命令时,我收到了显示的错误:

[root@pecan-9A firstDocker]# docker-latest stack deploy -c docker-compose.yml getstartedlab
Creating network getstartedlab_webnet
Error response from daemon: rpc error: code = 3 
desc = driver name: if driver is specified name is required

版本:

[root@pecan-9A firstDocker]# docker-latest --version
Docker version 1.13.1, build 6774275/1.13.1

更新1:我的docker-compose.yml

我使用的是docker-compose.yml 教程:

[root@pecan-9A firstDocker]# cat docker-compose.yml
version: "3"
services:
  web:
    # replace username/repo:tag with your name and image details
    image: localhost:5000/leeyuiwah/get-started:part2
    deploy:
      replicas: 5
      resources:
        limits:
          cpus: "0.1"
          memory: 50M
      restart_policy:
        condition: on-failure
    ports:
      - "80:80"
    networks:
      - webnet
networks:
  webnet:

更新2:文件的另一种变体

根据对此thread的一些讨论,我也调整了文件 使用稍微不同的网络定义。但是这个 文件与上面的错误相同。

[root@pecan-9A firstDocker]# cat docker-compose.v2.yml
version: "3.0"
services:
  web:
    image: localhost:5000/leeyuiwah/get-started:part2
    deploy:
      replicas: 5
      resources:
        limits:
          cpus: "0.1"
          memory: 50M
      restart_policy:
        condition: on-failure
    ports:
      - "80:80"
    networks: [hello]

networks:
  hello:
    driver: overlay
    ipam:
      config:
        - subnet: 172.17.0.0/16

1 个答案:

答案 0 :(得分:1)

我按照您使用的相同指南遇到了同样的问题。问题似乎来自于使用操作系统中的“docker”包而不是来自docker存储库的包。在设置指南中,他们要求您添加他们的存储库,删除docker和docker.io包,然后安装'docker-ce'。

请参阅:https://docs.docker.com/engine/installation/linux/docker-ce/ubuntu/#set-up-the-repository

一旦我这样做,我就不再遇到错误了。