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)