dockerのコンテナを停止するときに使うdocker-compose stop と docker-compose down についてです。
どのような違いがあり、普段はどちらを使えばよいのでしょうか。
Contents
stopとdownの違い
この違いは単純で、
stopはコンテナを停止するだけで削除しません。永続化していなくても残ります。
downはコンテナの削除も行います。
どちらを使えばよいのか
基本的にはdocker-compose downを使う運用の方が好ましいです。
stopは停止するだけなので、再開時にdocker-compose.ymlの変更などを適用しません。
そのため、ずっとstopだけで運用していると実は最新のdocker-compose.ymlの設定ではアプリケーションが動かない状態になっていたというケースが発生します。
また、docker-compose.ymlを変更したので数カ月ぶりにdownしたらデータベースが永続化できてなくてすべてのデータが吹っ飛んだなんてこともありえます。
理解した上で適宜stopも使い分ける、であれば問題はありませんが、
原則downを使う運用にしておくほうが普段からチェックが走る状態なのでいざというときに困りません。
まとめ
・downを使う
・ちゃんと理解しているのであれば適宜stopも使ってOK