首页 > 解决方案 > 尝试使用我的 docker-compose 文件启动服务时出现问题,一个服务在另一个服务之前随机启动

问题描述

所以我遇到了这个问题,我有 3 个服务,并且出于某种原因使用 docker-compose up,充当反向代理的服务 - 网络服务器(即 nginx)将以退出代码 1 退出,我对此或在其中没有经验stackoverflow(如果我错过了什么请告诉我添加它),我的文件如下所示:

version: '3'

services:
  back:
    image: remote_image/image_name1:latest
    volumes:
      - /var/www/image_name1

  webserver:
    image: remote_image/image_name2:latest
    volumes:
      - /var/www/image_name2
    ports:
      - "8080:8080"

  front:
    image: remote_image/image_name3:latest
    volumes:
      - /var/www/image_name3

我在这里错过了什么吗?

标签: docker-compose

解决方案


好吧,没有更多信息,我唯一可以建议的是在其中添加一个depends_on(如下所示,如果它依赖于前后,或者根据您的需要仅依赖其中一个),以便您控制服务从您的docker启动的方式-组合起来,注意控制服务的依赖关系,避免出现问题:

  webserver:
    image: remote_image/image_name2:latest
    depends_on:
      - back
      - front
    volumes:
      - /var/www/image_name2
    ports:
      - "8080:8080"

编辑:正如 jonrsharpe 提到的,依赖关系很重要,它们是在你的 nginx 配置文件中配置的吗?如果是,则仅缺少依赖项。


推荐阅读