コンテナ連携はだんだん複雑になるよ
DockerCompose
はコンテナ連携設定をYAML
形式ファイルを用いて記述・起動できるツールです。
Dockerでコンテナを複数連携させていくと、コンテナ起動が複雑になり、管理が大変になります。
シェルスクリプトでコンテナ起動を記述する方法で乗り切ることもできるみたいですが、ここはDockerCompose
を使うのが最先端のようです。
@MINOも最先端にあやかりたいっ!
そこでDockerCompose
をインストールしまぁす。
@MINOの環境はGNU/Linux debian8です。
DockerComposeのインストール
公式ドキュメント
公式ドキュメントにインストールガイドがあります。
インストール
curl
ちゃんでダウンロードします。-L
はリダイレクト先でも取得するオプションです。 リダイレクトで/usr/local/bin
にdocker-compose
として保存しています。
$ curl -L https://github.com/docker/compose/releases/download/1.6.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
uname -s
はOS名、uname -m
はデバイス種類を表します。
@MINOの環境では以下のように指定されたことになります。
docker-compose-Linux-x86_64
実行権を付与
コマンドに実行権を与えます。
$ sudo chmod +x /usr/local/bin/docker-compose
インストールができたかテスト
バージョン表示が正常にされるか確かめます。
$ docker-compose --version
docker-compose version 1.5.2, build 7240ff3
インストールできたようです。
補足・ハマったところなど
リダイレクト先のパーミッション
今回curl
でリダイレクトとをつかってインストールをしていますが、/usr/local/bin/
のパーミッションが無いとエラーになります。
curl
の実行にはsudo
は要りませんが、/usr/local/bin/
への書き込みにはsudo
が必要なので以下のようにリダイレクト側にsudo
を付けて実行すると大丈夫かと思います。
$ curl -L https://github.com/docker/compose/releases/download/1.6.0/docker-compose-`uname -s`-`uname -m` > sudo /usr/local/bin/docker-compose
アンインストール
なんらかの理由でアンインストールしたい場合は、/usr/local/bin/
に保存したdocker-compose
をrm
すればOKです。
$ rm /usr/local/bin/docker-compose
後記
DockerComposeはいいぞ。