docker-composeを用いてRails APIモードの環境構築③
前回の続きからになります
以下のコマンドで 一時的にコンテナを作成して、コンテナの中で rails new
を実行してファイルを作成します。
コンテナ内のファイルとホストのファイルを同期する設定を前回行ったので、ホスト側にもファイルが作成されます。
$ docker-compose run --rm api rails new . --api --force --database=mysql --skip-bundle --skip-test
それぞれのオプションについて解説していきます。
-skip-bundle : Dockerfile で bundle install するので bundle をスキップ
-force : rails new
で作られるファイルがすでに存在する場合上書き
-skip-test : rspec を使うのでスキップ
username
password
は docker-compose.yml の環境変数に合わせる。
今回は指定していないのでデフォルトのroot
になる。
default に書くか、development に書くかは調整してください!
default: &default
adapter: mysql2
encoding: utf8mb4
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
username: root
password: password
host: database
これであとは起動するだけです!!
以下を順番に実行
$ docker-compose up -d
$ docker-compose exec api rails db:create
これで localhost:3000 にアクセスして下記の画面になれば成功です!
長かったですね!これで環境構築完了です!!
わかりにくい点、間違っている点などあれば以下にご連絡いただければと思います。
何か連絡をしたい際は以下 SNS、メールでお願いいたします。
Twitter: https://twitter.com/naka_ryo_z
見出しへのリンク