Dockerfile

# Ruby on Rails Development Environment FROM ruby:2.5.0

Set up Linux#

RUN apt-get update RUN apt-get install -y build-essential inotify-tools libpq-dev nodejs libmariadbclient-dev WORKDIR /app EXPOSE 3000

docker-compose.yml

version: ‘3.2’ services: db: image: mariadb environment: MYSQL_ALLOW_EMPTY_PASSWORD: “yes” web: build: . volumes: - type: bind source: . target: /app ports: - “3000:3000” depends_on: - db command:

  • ./run.sh

config/database.yml

development: adapter: mysql2 encoding: utf8 database: blog username: root host: db port: 3306

Gemfile

gem ‘mysql2’

run.sh

#!/bin/sh set -e

Ensure the app’s dependencies are installed#

echo “bundle install —without=production…” bundle install —without=production

Potentially Set up the database#

echo “bundle exec rake db:setup…” bin/rails db:setup

Start the web server#

echo “bin/rails s -p 3000 -b ‘0.0.0.0’…” bin/rails s -p 3000 -b ‘0.0.0.0’

권한 바꾸기

$ chmod +x run.sh

도커 컴포저 실행하기

$ docker-compose up