Overview
- RailsウェブアプリをVPS上にDockerを使って構築。
- 最近マイブームのVPSとDockerの環境が快適すぎる。
- ひとまずhello,Worldするまで。
Get Started!
[Docker公式の参考記事](https://docs.docker.jp/compose/rails.html?highlight=rails)
- VPS契約
- おすすめはXserver4GB(¥2,000/月くらい)
- Linux上にユーザー作成
- 最低限のセキュリティ対策
- ディレクトリがごちゃつかないように
- その後のチーム開発等に備えて
- Dockerエンジンのインストール
- sudo権限が必要
- Dockerfile
- 一番シンプルに
- docker-compose.yml
- dbとwebの2つのコンテナを作成
- docker-compose up -d
- コンテナの状況確認
- ログを出してみる
- アクセス
- どこにアクセスすれば良いのか
Dockerfile
Dockerfile
FROM ruby:3.2.2
RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs
RUN mkdir /myapp
WORKDIR /myapp
ADD Gemfile /myapp/Gemfile
ADD Gemfile.lock /myapp/Gemfile.lock
RUN bundle install
ADD . /myapp
docker-compose.yml
docker-compose.yml
version: '3'
services:
db:
image: postgres
environment:
POSTGRES_DB: "db"
POSTGRES_HOST_AUTH_METHOD: "trust"
web:
build: .
command: >
/bin/sh -c '
rm -f tmp/pids/server.pid &&
rails db:create &&
bundle exec rails s -p 3000 -b '0.0.0.0'
'
volumes:
- .:/myapp
ports:
- "3000:3000"
depends_on:
- db
Gemfile変更したら
-
bundle
コマンドはDockerfile
の中なのでimageを作り直す必要がある。
// imageを作り直して
docker-compose build
// コンテナも起動
docker-compose up -d
Memo
- Dockerはいろんなところに情報があるけど基礎がわかる人でRailsアプリをサクッと構築したいなら公式のこれが手っ取り早いかもね