6
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

DockerでRails5.2開発環境を構築

Last updated at Posted at 2018-07-29

はじめに

学習で使用する為、DockerでRails環境を構築した時のメモです

こちらのサイトを参考にさせて頂きました
総合的な学習のお時間

今回は学習用にRails環境を使いたかったので一つのコンテナで複数のアプリケーションを何個も作ることが可能なワークスペースのようなイメージをつくりました

環境

Windows 10 Pro
Docker for Windows
Windows PowerShell

バージョン

Rails 5.2.0
Ruby 2.5.1
※2018/7/26 時点での最新安定バージョンを使いました

Dockerのインストール

こちらのサイトからダウンロードしてインストールすると起動します
https://www.docker.com/docker-windows

Dockerfileの作成


FROM ruby:2.5.1

ENV APP_ROOT /usr/src/workspace

WORKDIR $APP_ROOT

RUN apt-get update && \
    apt-get install -y nodejs \
                       default-mysql-client \
                       postgresql-client \
                       sqlite3 \
                       --no-install-recommends && \
    rm -rf /var/lib/apt/lists/*

COPY Gemfile $APP_ROOT
COPY Gemfile.lock $APP_ROOT

RUN \
  echo 'gem: --no-document' >> ~/.gemrc && \
  cp ~/.gemrc /etc/gemrc && \
  chmod uog+r /etc/gemrc && \
  bundle config --global build.nokogiri --use-system-libraries && \
  bundle config --global jobs 4 && \
  bundle install && \
  rm -rf ~/.gem

Gemfileの作成

source "https://rubygems.org"
gem 'rails', '5.2.0'

さらに空のGemfile.lockも作成しました

dockerイメージの作成

上記手順で作成したDockerfileを基にdocker imageを作成します

docker build -t [イメージ名] .
```※右辺の「.」はDockerfileのあるディレクトリを指定しています


```docker images
```でimageが出来ていることを確認できます

# dockerコンテナの作成

docker run -d -p 3000:3000 -it -v [連携したいホストマシンのディレクトリ]:/usr/src/workspace [イメージID]


# dockerコンテナに入る
```docker exec -it [container_id] /bin/bash```

# コンテナ内でGemfileの作成

source "https://rubygems.org"
gem 'rails', '5.2.0'

※Gemfileを作成したディレクトリを指定してコンテナを作成した場合はすでに存在しているので不要です

# Railsアプリケーションを作成
```rails new [appName]```

# Railsアプリケーションを起動

```cd [appName]
rails server -d -b [dockerゲストのIPアドレス]

ipアドレスは
ip a
で確認できます

起動確認

ホストマシンから
http://localhost:3000
へアクセス

rails.jpg

railsサーバの停止

プロセスIDの確認
ps -ef | grep puma

kill -9 [プロセスID]

おわり

お手軽にrailsアプリケーションを作成することが出来るようになりました

完成したイメージはこちらにありますのでもし必要な方がいましたら使っていただけたら幸いです
docker pull amnihs/rails_5_2_0

6
1
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?