一番分かりやすいdocker-composeで起動するRubyOnRailsの開発環境

Rubyが日本のまつもとゆきひろ(通称 Matz)さんが開発されている言語で

そのRubyを利用して、作られているウェブアプリケーションフレームワークが

RubyOnRailsです。

世界中大人気のウェブアプリケーションフレームワークで、日本もたくさんのベンチャー企業やスタートアップに採用されています。

私も複数の言語をアプリケーションを書いた経験がありますが、RubyOnRailsは比較的に触れる機会が少なかったのです。

しかし、こんな素晴らしい言語(Ruby)とこんな素晴らしいウェブアプリケーションフレームワーク(RubyOnRails)をやらないわけにも行けませんので

だいぶ前から、RubyOnRailsの基本を触ってみました。

しかし、自分のマシンが様々な開発環境が同居していて

その上、最近弊社(私)のところでほぼ全ての開発環境をDockerベースに移行しているため

RubyOnRailsもできればDockerベースの開発環境が欲しいなとずっと思って、ネット上、github上で漁って来ましたが、なかなか良さそうなものはなくて(いくつかがありましたが、多分自分が慣れていないのもあって、すんなり動かなかったり、エラーになったりして断念しました)

最近、1つ(私にとって)

一番分かりやすいdocker-composeで起動するRubyOnRailsの開発環境」を作ってくれるものを見つかったのです!

この喜びをぜひみなさんとシェアしたいと思いました!笑

こちらです!

https://github.com/bitnami/bitnami-docker-rails

目次

ステップ1:フォルダを作成

まず、下記のコマンドを実行します!

ターミナルで自分好きなところで、好きなフォルダを作って、そのフォルダに入ってください。

mkdir ~/myapp && cd ~/myapp

ステップ2:docker-compose.ymlファイルのダウンロード

curl -LO https://raw.githubusercontent.com/bitnami/bitnami-docker-rails/master/docker-compose.yml

そうすると、そのフォルダに

docker-compose.ymlファイルが作られます。

version: '2'

services:
  mariadb:
    image: 'bitnami/mariadb:latest'
    environment:
      - ALLOW_EMPTY_PASSWORD=yes

  myapp:
    tty: true # Enables debugging capabilities when attached to this container.
    image: 'bitnami/rails:latest'
    labels:
      kompose.service.type: nodeport
    environment:
      - DATABASE_URL=mysql2://mariadb/my_app_development
    depends_on:
      - mariadb
    ports:
      - 3000:3000
    volumes:
      - .:/app

中身は、上の通りになっています。データベースはMariaDBを使っていますね。(mySQLのフォーク)

bitnami/railsのdockerfileは

こちらです。https://github.com/bitnami/bitnami-docker-rails/blob/master/5/debian-9/Dockerfile

 

ステップ3:起動する

docker-compose up

初回は、dockerイメージをpullしたり、gemをインストールしたりするので、少し辛抱強く待ちましょう。

起動することで、アプリケーションの初期化もされています。

このようなファイル群が現れます。

2回目以降は比較的に早く起動できます。

これだけです!

簡単すぎて、感動しました!

ステップ4:ブラウザーで確認する

ブラウザーで http://localhost:3000を開いてみてください。

この画面が表示されたら、成功です!

本当に今まで、色々試したDockerベースのRubyOnRailsの開発環境の中で一番簡単でした!

もっと簡単なのがあれば、ぜひお教えいただければ幸いです。(Twitterのフォロー、DM大歓迎です!)

その他の開発時よく使うコマンド

rakeタスクの一覧を表示する

docker-compose exec myapp bundle exec rake -T

Railsの環境情報を表示する

docker-compose exec myapp bundle exec rake about

Railsのコンソールを表示する

docker-compose exec myapp rails console

ソースコードの自動生成

docker-compose exec myapp rails generate scaffold User name:string email:string

データベースのマイグレーション

docker-compose exec myapp bundle exec rake db:migrate

新しいRubygemを追加する

echo "gem 'httparty'" >> Gemfile
docker-compose restart myapp

まとめ

いかがですか?

これで、このdockerベースのRubyOnRailsの開発環境でRubyOnRailsの勉強が捗りそうですね!

他に詳細をこちらをご参照ください。

https://github.com/bitnami/bitnami-docker-rails

では!Happy Coding!

[amazonjs asin=”4774188832″ locale=”JP” title=”Ruby on Rails 5アプリケーションプログラミング”]

[amazonjs asin=”4774193976″ locale=”JP” title=”プロを目指す人のためのRuby入門 言語仕様からテスト駆動開発・デバッグ技法まで (Software Design plusシリーズ)”]

[amazonjs asin=”B07BHK5KX7″ locale=”JP” title=”プログラマのためのDocker教科書 第2版 インフラの基礎知識&コードによる環境構築の自動化”]

[amazonjs asin=”4839964580″ locale=”JP” title=”Dockerによるアプリケーション開発環境構築ガイド”]

 

Add a Comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close