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
見出しへのリンク