【Docker】初心者がDockerで環境変数を設定してみた

スポンサーリンク
プログラミング
スポンサーリンク
スポンサーリンク

【Docker】初心者がDockerで環境変数を設定してみた

環境変数を使って、ソースコード内に環境固有の設定を変更できるようにしてみた。

やりたいこと
  • 開発環境:export APP_ENV=develop && docker-compose up
  • 本番環境:export APP_ENV=production && docker-compose up
  • で画面表示する文字を変更してみる。

作成したファイル

.
├── config
│   ├── develop.env
│   └── production.env
├── docker-compose.yml
└── services
    └── app
        ├── Dockerfile
        └── src
            └── index.php
APP_ENV=develop
APP_ENV=production
<?= getenv("APP_ENV") ?>
FROM ubuntu:16.04

RUN apt-get update
RUN apt-get install -y software-properties-common
RUN LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php
RUN apt-get update
RUN apt-get install -y php7.4

COPY ./src/index.php /var/www/html/

CMD [ "php", "-S", "0.0.0.0:80", "-t", "/var/www/html/" ]
version: '2'
services:
  app:
    build: "./services/app"
    container_name: "app"
    ports:
      - "8000:80"
    env_file:
      - "./config/${APP_ENV}.env"

起動コマンド

echo APP_ENV=develop > config/develop.env

http://localhost:8000にアクセスしてdevelop が表示されれば成功

echo APP_ENV=production > config/production.env

http://localhost:8000にアクセスしてproduction が表示されれば成功

タイトルとURLをコピーしました