2026年8月20日

2026年8月20日

Dockerのenvironmentファイル(.env)を使う方法

はじめに

Dockerの環境設定やアプリケーションのパラメータを管理するには、.envファイルを使用することが一般的です。.envファイルは外部から読み込み可能な形式で環境変数を定義し、アプリケーションが起動する際に自動的に使用されます。この方法により、開発と生産環境間での設定変更が容易になります。

症状・背景

-.envファイルを使用することで、環境変数の管理が一元化され、複数のコンテナで共通の設定を共有できます。

-.envファイルは.ENVファイルとは異なり、変数名は大文字小文字を区別します。そのため、設定の一貫性を保つことができます。

-開発やデプロイ時に環境ごとの異なる設定が必要な場合、.envファイルを使用することで一箇所に管理できます。

手順・設定方法

ステップ1: .envファイルを作成する

# .envファイルを作成し、環境変数を定義します。
echo "DB_USER=root" > .env
echo "DB_PASSWORD=secret" >> .env
echo "DB_NAME=mydatabase" >> .env

ステップ2: Docker Composeで.envファイルを使用する

# docker-compose.ymlファイルを作成し、.envファイルを参照します。
version: '3'
services:
  db:
    image: mysql:5.7
    environment:
      - MYSQL_ROOT_PASSWORD=root
    volumes:
      - ./data/db:/var/lib/mysql
  web:
    image: myapp:latest
    ports:
      - "8000:80"
    depends_on:
      - db

ステップ3: 環境ごとの.envファイルを作成する

# .env.localで開発環境用の設定を定義します。
echo "DB_NAME=mydevdb" > .env.local

# .env.prodで生産環境用の設定を定義します。
echo "DB_NAME=myproddb" > .env.prod

ステップ4: 実践/トラブルシュート/監視

# Docker Composeを使用してコンテナを起動します。
docker-compose up -d

# コンテナのログを確認します。
docker-compose logs web

注意事項

  • .envファイルはプロジェクトルートに配置することを推奨します。
  • 環境ごとの.ENVファイルを作成することで、一貫した環境設定を確保できます。
  • Docker Compose v3以降では.envファイルの読み込みが自動化されています。
  • セキュリティ上の注意点として、.envファイルはチームメンバー間で共有する場合は注意が必要です。

まとめ

1. .envファイル作成: 環境変数を一元管理するために必要です。

2. Docker Composeで使用: .envファイルをdocker-compose.ymlから参照します。

3. 環境ごとの設定: .env.localや.env.prodなどで異なる設定を定義できます。

4. 実行と監視: docker-compose up -dやlogsコマンドを使用して動作確認します。

5. 注意点: セキュリティ上の問題に気をつけ、必要に応じて一貫性を維持するための手順を踏むことが重要です。

関連記事:

  • [Docker Composeの基本操作]
  • [WordPressとDocker]
  • [環境変数の管理方法]

お気軽にご相談ください

お見積りへ お問い合わせへ