0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Docker】起動済のコンテナに.envファイルの変更を反映したい

Last updated at Posted at 2024-11-18

前提

.envファイルを変更する前に既にDockerコンテナを起動済みであること。

そもそもの話

実は.envを変更して保存するだけでは、起動済みのコンテナに変更内容が反映されません。
また、単純に以下のようにコンテナを再起動しても反映されない可能性が高いです。

# コンテナを再起動する
docker-compose restart

変更を反映するための手順

.envの変更を確実に反映させるためには、以下の手順を踏む必要があります。

  1. .envを変更して保存する。
  2. プロジェクトのルートディレクトリでコンテナの削除コマンドを実行する。
# ボリュームごとコンテナを削除する
docker-compose down -v

この時、vオプションをつけてコンテナのボリュームごと削除するのがポイントです。
ボリュームには、初期の.envの内容をもとに設定された情報が永続的に保存されてしまいます。そのため、再起動しても初期の設定で作られたボリュームの情報をもとにコンテナが起動されて.envの変更が反映されないことがあるからです。
ですので、ボリュームごとコンテナを吹っ飛ばしてやる必要があります。

  1. コンテナを起動
    (バックグラウンドで起動したければdオプションをつける)
# バックグラウンドでコンテナを起動
docker-compose up -d

おわり

この手順を踏めば.envの変更が反映されるはずです。
最後まで読んでくださりありがとうございました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?