Docker関連

git clone後、初回時コマンド

前提 : Docker Desktopをたちあげていること https://www.docker.com/products/docker-desktop/

sudo docker-compose build --no-cache
sudo docker-compose up
sudo docker-compose exec backend rails db:create
sudo docker-compose exec backend rails db:migrate
sudo docker-compose exec backend rails db:seed

初回以外コマンド

前提 : Docker Desktopをたちあげていること

sudo docker-compose build && sudo docker-compose up

コマンド解説

# Dockerイメージを作成
sudo docker-compose build --no-cache

# Dockerイメージからコンテナ作成、立ち上げ
sudo docker-compose up

# backend/config/database.ymlの設定でデータベース作成
sudo docker-compose exec backend rails db:create

# マイグレーションファイルを適用
sudo docker-compose exec backend rails db:migrate

# seed.rbに書いてある内容に従いテストデータを生成する
sudo docker-compose exec backend rails db:seed

# テーブル再作成後、マイグレーションファイルを再適用
sudo docker-compose exec backend rails db:migrate:reset

# backendのDockerコンテナに入る
sudo docker-compose exec -it backend bash

# frontendのDockerコンテナに入る
sudo docker-compose exec -it frontend sh

# dbのDockerコンテナに入る
sudo docker-compose exec -it db bash

# 入っているコンテナを抜ける
exit

mysql接続方法

前提 : sudo docker-compose up実行中に別ターミナルを開く

sudo docker-compose exec -it db bash
mysql

参考資料

ポート情報

対象 ポート
backend(Rails) 8080
frontend(React) 3000
db(mysql) 3307