293

docker-compose.yml複数のコンテナを含む があります。そのうちの 3 つは私のアプリ (クライアント、サーバー、データベース) 用で、残りはさまざまな開発ツール (psql、npm、manage.py など) 用です。実行するとdocker-compose upすべてが開始されますが、主要な 3 つだけを開始する必要があります。指定したリンクのおかげで、これら 3 つだけで開始できますdocker-compose up clientが、出力はその 1 つのコンテナーからのみになります。それで、次のいずれかを行う方法はありますか?

  1. docker-compose にどのコンテナーを開始するかを指示します。docker-compose up
  2. リンクされたすべてのコンテナーから出力を取得するdocker-compose up client
4

8 に答える 8

429

以下を使用してコンテナーを開始できます。

$ docker-compose up -d client

これにより、コンテナーがバックグラウンドで実行され、出力が次の場所から利用可能になります。

$ docker-compose logs

開始したすべてのコンテナで構成されます

于 2015-05-14T10:08:25.390 に答える
88

docker-compose ファイルで定義された特定のサービスを開始するには。たとえば、 docker-compose.yml がある場合

docker-compose start db  

次のような構成ファイルが与えられます。

version: '3.3'

services:
   db:
     image: mysql:5.7
     ports:
       - "3306:3306"
     volumes:
       - ./db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: yourPassword
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: yourPassword

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "80:80"
     volumes:
       - ./l3html:/var/www/html
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: yourPassword
volumes:
    db_data:
    l3html:

スイート全体を起動する前に、mySQL のみを起動したい場合があります (データベースに入力したい場合もあります)。

于 2018-08-25T21:17:40.500 に答える