ページ

2016年11月3日木曜日

Docker Composeの利用


前回の記事で複数のコンテナを起動/停止する際に
シェルを作成し実行していましたが、
Docker Composeを使うとそこら辺をよろしくやってくれます。
Docker for Macをインストールすると一緒にインストールされます。

docker-compose.ymlの作成


前回はと言うと・・・
#!/usr/bin/env bash

DOCKER_HOME=$PWD

if [ -e $DOCKER_HOME/registry ]; then
  # 何もしない
else
  mkdir $DOCKER_HOME/registry
fi

docker run \
    -d \
    -p 5000:5000 \
    -v $DOCKER_HOME/registry:/var/lib/registry \
    --name docker_registry2 \
    registry:2

docker run \
    -d \
    -e ENV_DOCKER_REGISTRY_HOST=[ローカルPCのIPアドレス] \
    -e ENV_DOCKER_REGISTRY_PORT=5000 \
    -p 8080:80 \
    --name registry_browser \
    konradkleine/docker-registry-frontend:v2
このようなシェルを書いてました。
これをdocker-compose.ymlファイルを作成し以下のように記述します。
docker_registry2:
  image: registry:2
  ports:
    - "5000:5000"
  volumes:
    - "./registry:/var/lib/registry"
registry_browser:
  image: konradkleine/docker-registry-frontend:v2
  ports:
    - "8080:80"
  environment:
    ENV_DOCKER_REGISTRY_HOST: [ローカルPCのIPアドレス]
    ENV_DOCKER_REGISTRY_PORT: 5000
シェルとの対比は見れば分かるとは思います。
docker-compose.ymlがある場所で
$ docker-compose up -d
を実行すると依存関係なんかをよろしくやってくれて、
コンテナが起動します。
また、
$ docker-compose stop
でコンテナをまとめて終了させる事ができます。
最後に
$ docker-compose rm
でまとめてコンテナを削除します。
便利ですw

0 件のコメント:

コメントを投稿