Docker×Ruby on Railsよく使うコマンド集
Docker
仮想環境のコンテナを作成、配布、実行し、誰でもどのPCでも同じ環境下でアプリを開発・デプロイできるプラットフォーム。
参考動画
https://youtu.be/DNnW4I43wyU?si=QbMUH9fQQ3LFd1Nh
https://youtu.be/VIzLh4BgKck?si=33iwmiJvUS1Y5PMO
https://youtu.be/ltDdZAJli8c?si=1sBf1XiSqb7TEjWV
イメージ
- 仮想環境の種類(MySQL、Railsなど)
- docker hubのサイトで入手できる
コンテナ
- イメージを使い作られる仮想環境
- イメージからコンテナを作る=「ビルド」
Docker Compose
- 複数のコンテナを一括管理できる
- docker-compose.ymlに記載
ビルド(docker-compose.ymlでまとめたイメージのビルドを行う場合)
docker-compose build ・・・
コンテナ作成・起動(バックグラインドで)
docker-compose up -d
コンテナ停止・削除
docker-compose down
コンテナ一覧を表示(どのサーバーが起動しているか確認できる)
docker-compose ps
コンテナ内でコマンドを実行(コンテナを作成する場合)
docker-compose run サービス コマンド
コンテナ内でコマンドを実行(起動中)
docker-compose exec サービス コマンド
docker-compose exec web bash
※exit
で抜けられる
ライブラリを新たに追加した時
①Gemfileに記載
gem ‘ライブラリ名’, ‘バージョン指定’
②Gemをインストール
docker-compose run web bundle install
③イメージを作成(Dockerfile、Gemfileを修正して、変更を反映させる)
docker-compose build
Rails
コントローラ作成
rails g controller Posts
モデル作成
rails g model モデル名 title:string content:text
モデル名:1文字目は大文字、単数形(ex. Post)
テーブルのデータ型
- string : 文字列
- text : 長い文字列
- integer : 整数
- float : 浮動小数
- decimal : 精度の高い小数
- datetime : 日時
- timestamp : タイムスタンプ
- time : 時間
- date : 日付
- binary : バイナリデータ
- boolean : Boolean
画像パスはstring / text型にする
マイグレーション
rails db:migrate
モデル削除
rails destroy model モデル名
参考サイト
https://qiita.com/s_tatsuki/items/900d662a905c7e36b3d4
Active Admin
参考サイト
https://qiita.com/enomotodev/items/5f6d9348207124a41bf9
モデルの管理画面を作成
rails g active_admin:resource モデル名
モデル名:1文字目は大文字、単数形(ex. Post)