从 docker-compose 启动特定服务

Ank*_*rma 3 docker dockerfile docker-compose

我是 Docker 新手,并且有 docker-compose.yml,其中包含许多服务,并且我需要启动一项特定服务。我有 docker-compose.yml 文件,其中包含信息:

version: '2'

services:
    
    postgres:
        image: ${ARTIFACTORY_URL}/datahub/postgres:${BUILD_NUMBER}
        restart: "no"
        volumes:
            - /etc/passwd:/etc/passwd
            

        volumes_from:
            - libs
        depends_on:
            - libs

    setup:
        image: ${ARTIFACTORY_URL}/setup:${B_N}
        restart: "no"
        volumes:
            - ${HOME}:/usr/local/
Run Code Online (Sandbox Code Playgroud)

我可以使用命令调用 docker-compose.yml 文件:

docker-compose -f docker-compose.yml up -d --no-build
Run Code Online (Sandbox Code Playgroud)

但我需要在 docker-compose 文件中启动“设置服务”:

我怎样才能做到这一点?

Fun*_*der 6

这很简单:

$ docker compose up <service-name>
Run Code Online (Sandbox Code Playgroud)

在你的情况下:

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

要停止服务,则不需要指定服务名称:

$ docker compose down
Run Code Online (Sandbox Code Playgroud)

会做。

小旁注:如果您位于docker-compose.yml文件所在的目录中,那么 docker-compose 将隐式使用它,无需将其添加为参数。以下情况需要提供:

  • 该文件不在您的当前目录中
  • 文件名与默认名称不同,例如。myconfig.yml