LoginSignup
1
2

More than 3 years have passed since last update.

DockerでRuby on Railsの実行環境を作成する

Posted at

Dockerをインストール済みで、todoというアプリを作成する前提で以下を進める。

Dockerfileを作成する

Dockerfile
# 
FROM ruby:2.6.3-stretch

RUN gem install rails

RUN apt-get update && apt-get install -y nodejs

docker-compose.ymlを作成する。

docker-compose.yml
version: "3"
services:
  mysql:
    image: mysql:8.0.13
    command: --default-authentication-plugin=mysql_native_password
    volumes:
      - "./mysql-data:/var/lib/mysql"
    environment:
      MYSQL_ROOT_PASSWORD: root
  # コンテナの名前
  app:
    # Dockerfileの内容を元にビルドさせる
    build: .
    volumes:
      - ".:/app"
    ports:
      - "3000:3000"
    tty: true
    depends_on:
      - mysql

コンテナの作成と開始を行う

以下のコマンドを叩くことで、docker-composeファイルに定義したコンテナの作成と開始をしてくれる。

$ docker-compose up

Dockerを操作する

以下のコマンドを叩くことで、Dockerの中に入れる。

$ docker exec -it todo_app_1 /bin/bash

root/# ls
app  bin  boot  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

root/# cd app

root/app# ls
Dockerfile  docker-compose.yml  mysql-data

railsをインストールする。

root/app# gem install rails
Successfully installed rails-5.2.3
1 gem installed

アプリの雛形を作成する。

root/app# rails new .
root/app# bundle install

サーバーを起動する

root/app# rails s -b 0.0.0.0

http://localhost:3000 にアクセスすると、Railsアプリが立ち上がる。

スクリーンショット 2019-06-29 13.02.30.png

めでたし、めでたし!

1
2
0

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
1
2