如何在不检查或启动任何依赖项的情况下在 docker-compose 中启动一项服务?

use*_*669 7 docker docker-compose

我们在开发环境中使用 docker-compose 来启动所有服务。

有谁知道我是否可以只使用 docker-compose 启动 1 个服务而不检查依赖项是否正在运行(因为我知道它们正在运行)?

$ docker-compose -f docker-compose-service1.yml  up
Run Code Online (Sandbox Code Playgroud)

它给出了一个错误:错误:服务“service1”取决于未定义的服务“service2”。

yml 文件类似于:

version: '2'
services:

  service1:
    build: ./service1
    dns: 192.168.1.100
    depends_on:
      - "service2"
    container_name: service1
Run Code Online (Sandbox Code Playgroud)

我只想启动 service1,因为我知道所有依赖项都已经在运行。

Ayu*_*hya 10

如果其他服务正在运行并且您只想重新启动一个服务,则可以使用

docker-compose -f docker-compose.yml restart service1
Run Code Online (Sandbox Code Playgroud)

编辑:

关于错误:

错误:服务“service1”依赖于未定义的服务“service2”。

这是因为docker-compose.yml用于up服务的 docker-compose 是不可接受的。首先编译 yml 文件(在我们的例子中是失败点)以查看是否一切都符合正确的语法,然后执行它。

  • 我只是想启动一个服务(而不是重新启动它),所以 `docker compose -f docker-compose.ci.yml up db` 完成了这项工作 (4认同)