代码之家  ›  专栏  ›  技术社区  ›  rfgamaral

容器重新启动策略不适用于Docker Compose(适用于Docker CLI)

  •  0
  • rfgamaral  · 技术社区  · 7 年前

    我有以下的 docker-compose.yml 文件:

    version: '3.5'
    services:
      traefik:
        image: traefik:1.7-alpine
        ports:
          - 8881:80
        volumes:
          - /var/run/docker.sock:/var/run/docker.sock
          - ./traefik.toml:/etc/traefik/traefik.toml
        restart: always
    

    从 docker-compose up -d

    现在假设我用这个开始容器:

    docker run -d -p 8882:80 \
        -v /var/run/docker.sock:/var/run/docker.sock \
        -v ./traefik.toml:/etc/traefik/traefik.toml \
        --restart always \
        traefik:1.7-alpine
    

    如果我重新启动Docker引擎,这个会自动启动。

    Docker编写版本有什么问题吗?

    我创建了另一个使用不同图像的测试(只是为了确保它与Traefik无关),我相信我将问题定位到了卷:

    Docker撰写:

    version: '3.5'
    services:
      traefik:
        image: containous/whoami
        volumes:
          - ./placeholder.txt:/placeholder.txt
        restart: always
    

    Docker客户端:

    docker run -d \
        -v ./placeholder.txt:/placeholder.txt \
        --restart always \
        containous/whoami
    

    inspect )它们之间(左:合成;右:cli): https://www.diffchecker.com/CC0WV3va

    enter image description here enter image description here enter image description here

    从Docker Compose版本中删除卷线“解决了问题”。

    0 回复  |  直到 7 年前
    推荐文章