初心者向けのDockerによるRails環境の構築です。
また、OSはWindowsです。
Windowsユーザーは、この環境構築の段階でとても苦しみますよね
私もとても時間がかかりました......
この記事がそういった方々の参考になれたら嬉しいです
目次
- Docker for Windowsのインストール
- Docker Toolboxのインストール
- Rails開発環境構築用ファイル
- Docker Toolboxをお使いの場合の注意点
- Railsの環境構築
Docker for Windowsのインストール
Dockerの公式サイトURL https://www.docker.com
以下の順に進める。
1.Product
2.GET DOCKER COMMUNITY EDITION
3.下にスクロール
4.DOCKER FOR WINDOWSのDownloud from Docker Store
5.Get Docker
6.実行>アイコン実行>
7.PowerShellで$ docker -v
で確認
8.$ docker run hello-world
を実行
9.>Hello from Docker!
と表示されればOK!
Docker Toolboxのインストール
Docker ToolboxのダウンロードページURL
https://docs.docker.com/toolbox/toolbox_install_windows
1.Get Docker Toolbox for Windows > 実行 > VB||Gitはあるなら無視
2.\next > install > DQTを実行 > 待つ > $ docker -v
で確認
3.$ docker run hello-world
を実行
4.>Hello from Docker!
と表示されればOK!
Rails開発環境構築用ファイル
version: '3'
services:
web:
build: .
command: bundle exec rails s -p 3000 -b '0.0.0.0'
volumes:
- .:/app
ports:
- 3000:3000
depends_on:
- db
tty: true
stdin_open: true
db:
image: mysql:5.7
volumes:
- db-volume:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: password
volumes:
db-volume:
FROM ruby:2.4.5
RUN apt-get update -qq && apt-get install -y build-essential nodejs
RUN mkdir /app
WORKDIR /app
COPY Gemfile /app/Gemfile
COPY Gemfile.lock /app/Gemfile.lock
RUN bundle install
COPY . /app
修正箇所)Dockerfile/ruby:2.4.5←任意のバージョンで
Docker Toolboxをお使いの場合の注意点
IPアドレスを確認するには、ターミナル(コマンドプロンプトなど)で次のコマンドを実行します。
$ docker-machine ip default
このコマンドの結果表示されたIPアドレスが、Docker Toolboxで動かしている仮想マシンのIPアドレスになります。
Docker Toolboxをお使いの場合は、このIPアドレスを使用して
http://<確認したIPアドレス>:3000
のようにアクセスしてください。
Railsの環境構築
docker-compose.ymlファイルの置いてあるディレクトリで実行。
1.Railsのコンテナを起動してRailsのプロジェクトを作成するコマンド
$ docker-compose run web rails new . --force --database=mysql
2.Railsイメージのビルド実行コマンド
$ docker-compose build
3.config/database.ymlの修正内容
default内の項目を修正
password: password
host: db
4.コンテナをデタッチドモード(バックグラウンド)で実行するコマンド
$ docker-compose up -d
5.RailsのコンテナでDB作成のタスクを実行するコマンド
$ docker-compose run web bundle exec rake db:create