##開発環境
macOS High Sierra
ruby 2.6.0p0 (2018-12-25 revision 66547) [x86_64-darwin17]
Bundler version 2.0.1
##構築手順
###1. Dockerのインストール(https://docs.docker.com/docker-for-mac/install/)
###2. RubyとMySQLのDockerイメージをダウンロード
$ docker pull mysql:5.7 $ docker pull ruby:2.6.0
###3. Dockerfile作成
FROM ruby:2.6.0 ENV LANG C.UTF-8 RUN apt-get update -qq && apt-get install -y build-essential libpq-dev nodejs RUN gem install bundler WORKDIR /tmp ADD Gemfile Gemfile ADD Gemfile.lock Gemfile.lock RUN bundle install ENV APP_HOME /first-web-app RUN mkdir -p $APP_HOME WORKDIR $APP_HOME ADD . $APP_HOME
###4. Gemfile作成
source 'https://rubygems.org' gem 'rails'
###5. 空のGemfile.lock作成
$ touch Gemfile.lock
###6. docker-compose.yml作成
version: '2' services: web: build: . command: bundle exec rails s -p 3000 -b '0.0.0.0' volumes: - .:/app_name ports: - "3000:3000" depends_on: - db db: image: mysql:5.7 environment: - MYSQL_ROOT_PASSWORD=password
###7. コンテナにRailsアプリ作成
$ docker-compose run web rails new . --force --database=mysql --skip-bundle
###8. Gemfileの変更
ruby
1# 追記 or コメントアウト 2gem 'therubyracer', platforms: :ruby
###9. build
$ docker-compose build
###10. database.ymlの設定
default: &default adapter: mysql2 encoding: utf8 pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %> username: root password: password host: db development: <<: *default database: first-web-app_development test: <<: *default database: first-web-app_test production: <<: *default database: first-web-app_production username: first-web-app password: <%= ENV['FIRST-WEB-APP_DATABASE_PASSWORD'] %>
###11. コンテナの実行
$ docker-compose up
###12. ブラウザ確認
##ログ
$ docker-compose up Starting first-web-app_db_1 ... done Recreating first-web-app_web_1 ... done Attaching to first-web-app_db_1, first-web-app_web_1 db_1 | 2019-01-17T00:51:49.477568Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). db_1 | 2019-01-17T00:51:49.478825Z 0 [Note] mysqld (mysqld 5.7.24) starting as process 1 ... ・ ・ ・ web_1 | A server is already running. Check /first-web-app/tmp/pids/server.pid. web_1 | => Booting Puma web_1 | => Rails 5.2.2 application starting in development web_1 | => Run `rails server -h` for more startup options web_1 | Exiting first-web-app_web_1 exited with code 1
##質問
- どうすればブラウザアクセスができるようになるでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/01/17 07:55