とりあえず、Railsアプリケーションを動かしてみる
まずは、どういうところに環境依存があるのか、また何がめんどくさかったのか思い出すために、
Railsアプリケーションをcloneしてlocal環境で動かすところまでやってみましょう。
■sample project
https://github.com/k-tetsuhiro/rails_docker_sample
こちらはruby 2.7.2
と Rails 6.0.3.4
で作成されたsampleアプリです。
これを好きなところにgit cloneしてみてください。
これを bundle exec rails s
で動かせるところまで持っていってみてください!
動かすまでに様々な問題点が出てくると思います。
出てくる問題点
まずはlocalのRubyのバージョンに2.7.2が入っているでしょうか?
rbenvを使用してる場合 rbenv versions
で確認できます。
$ rbenv versions
system
2.3.8
2.6.3
2.6.5
2.6.6
2.7.0
2.7.1
* 2.7.2 (set by /Users/kakuno/.rbenv/version)
どうでしょうか?
2.7.2が入ってない場合、まずlocal環境にruby2.7.2のインストールが必要になります。
さっそく環境依存が出てきてしまいました!!
この先も同じような環境依存が出てくる
起動するまでにlocalのこのような環境依存にこまるかと思います
・rubyのversion
・Railsのversion
・MySQLのversion
・yarnのversion
etc...
その環境依存 dockerで解決しよう!
誰かが環境を整えたRailsアプリケーション
それをimageとして保存しちゃおう!!
すべての環境(Ruby, Rails, MySQL, etc...)を込み込みでimageにしてしまえば、そもそも環境依存はおきないよね!
というイメージです!
更に利点として、local環境がMacだろうがWindowsだろうが、実際にRubyやRailsが入っているのはdockerのimageなので、どのマシンでも関係なく動きます!
dockerで動かしてみる
dockerで動かすことにすごいメリットを感じますね!
では次回はどうしたら今のRailsアプリケーションをdockerで動かすことができるのか?
ここを説明していきます。