LoginSignup
1
0

More than 1 year has passed since last update.

Dockerfileは、本番用と開発用に二つ作ろう

Last updated at Posted at 2022-08-23

開発環境と本番環境の違い

先日、RailsアプリをAWSにデプロイしました

早速デプロイしたアプリの修正を行おうとローカルで起動しようとしたら起動せず..

それもそのはず。開発環境ではdocker-composeを使ってDBを起動してましたが、本番環境ではRDSを使ってるので、docker-composeから削除してあったのです

いちいちコメントアウトしたりして書き換えることもできるでしょうが、どこを修正すべきかわからなくなったりしそうで怖いし、何より面倒ですよね

開発環境用docker-compose ファイルを作る

  • 本番環境用ファイル=docker-compose-prod.yaml
  • 開発環境用ファイル=docker-compose-dev.yaml

今回はすでにデプロイしてしまってるので、開発環境用のファイルだけ追加で作ることにします

起動方法

開発環境で起動する場合は

$ docker compose -f docker-compose-dev.yaml up -d

-fオプションでファイルを指定できるんですね

Dockerfileも変更したい場合

  • 本番環境=Dockerfile.prod
  • 開発環境=Dockerfile.dev

ビルドするなら

$ docker build -f Dockerfile.dev

docker-composeで起動するなら

docker-compose-prod.yamlversion: '3'
services:
  app:
    build:
      context: .
      dockerfile: "Dockerfile.dev"
  • context ・・・ Dockerfileの所在
  • dockerfile ・・・ Dockerfileの名称

のふたつを記載してあげる

Dockerfileを本番環境と開発環境で分けたいとき

1
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
1
0