Dockerとdocker-composeを使ってRuby on Rails6の環境を構築しました。
前提
Docker & docker-composeをインストール済み
動作環境
- macOS Catalina 10.15.7
- Docker 20.10.2
- docker-compose 1.27.4
ディレクトリを作成します。
mkdir rails_api_docker
cd rails_api_docker
Gemfile
Dockerfile
docker-compose.yml
を作成します。
Gemfile
source 'https://rubygems.org'
gem 'rails', '6.0.3'
Dockerfile
FROM ruby:2.7.1-alpine3.11
ENV BUNDLER_VERSION=2.1.4
WORKDIR /usr/src/app
COPY Gemfile .
COPY Gemfile.lock .
RUN apk update && \
apk add --no-cache \
shared-mime-info \
yarn \
nodejs \
linux-headers \
libxml2-dev \
curl-dev \
make \
gcc \
libc-dev \
g++ \
sqlite-dev \
tzdata && \
gem install bundler && \
bundle install
COPY . .
EXPOSE 3000
docker-compose.yml
version: '3'
services:
web:
build: .
ports:
- '3000:3000'
volumes:
- .:/usr/src/app
tty: true
command: ["rails", "server", "-b", "0.0.0.0"]
docker-composeを使ってRailsアプリケーションを作成します。
docker-compose run web rails new . --force
もう一度Dockerイメージをビルドします。
docker-compose build
docker-composeを起動します。
docker-compose up
localhost:3000
にアクセスし、以下が表示されれば成功です。
読んでいただきありがとうございました!ご指摘やご意見などありましたらコメントしていただけると嬉しいです🐳