c0d3man52

Docker

docker-compose upしたコンテナの設定を変更する

docker-compose upしたコンテナの設定を変更する方法がわからなかったので調べてみました。。

更新日: 2019.12.11公開日: 2017.8.22

やり方

なんてことありません。ストップさせて、docker-compose.ymlの中身を書き換えるだけ。それだけで、設定が新しくなります。

Dockerというとコンテナの使い捨てというイメージがあるので、一回Dockerコンテナを停止させると、すでにリンクされているコンテナとの依存関係などがごちゃごちゃになるような感じがして、非常に怖いですが、筆者の環境ではしっかりと停止前の環境のままで再起動されました。

dockerコンテナ群を停止

//止めたいdockerコンテナ群のdokcer-compose.ymlのあるディレクトリで
docker-compose stop

docker-compose.ymlの中身を書き換え

必要な情報を追記します。

docker-compose upで再起動

docker-compose up -d

注意しないといけないのは、docker execとかでコンテナ内の設定ファイルなどを書き換えてもいいんですが、それだと、volumeをローカルマウントしていない場合、コンテナが再起動した時に設定ファイルが消えるので、しっかりとdocker-composeし直すのが良いと思います。

いろんな環境を作ったり壊したり、作り直したりが簡単にできるdocker-compose。

最初は、「docker runのが楽でわかりやすいのに、なんでネット上のサイトはみんなdocker-composeなんだよ!」なんて思っていましたが、慣れるとやっぱりdocker-composeのが使いやすいですね。