はじめに
僕は普段Docker環境で開発しています。
でも、Rails newでサクッと試したいときに環境作るのめんどくさいなーと思ってました.
Railsのリポジトリを見てるとDocked Rails CLIなるものを見つけてコレ使えるんじゃね?と思ったので試してみます
前提
Docker環境がセットアップ済み
使い方
使い方は至って簡単
READMEにあるように、aliasを登録したり時前のシェルスクリプトを作ったりするだです。
Railsのコマンドを開発PCのホスト環境のセットアップなしに実行できるようになります!
docker volume create ruby-bundle-cache
alias docked='docker run --rm -it -v ${PWD}:/rails -u $(id -u):$(id -g) -v ruby-bundle-cache:/bundle -p 3000:3000 ghcr.io/rails/cli'
ただ、MySQLやPostgreSQLの環境では依存パッケージがあるので使えません...
With PostgreSQL
個人的にPostgreSQLでRailsアプリを開発することが多いので、それ用のイメージも作ってみました。
やったことは単純で、PostgreSQLのクライントをインストールしただけです。
使い方
docker volume create ruby-bundle-cache
alias docked='docker run --rm -it -v ${PWD}:/rails -u $(id -u):$(id -g) -v ruby-bundle-cache:/bundle -p 3000:3000 ghcr.io/murajun1978/docked-with-postgresql:main'
あとはRailsのコマンドをお好きなように
docked rails server
既存のプロダクトの場合
cd <product_dir>
docked rails server
こんな感じで、ローカルのRails appを簡単にDocker化できます!
僕が作ったリポジトリはこちら ↓
まとめ
Docked Rails CLIでサクッとできるようになりましたね!
最近まで知らなかった...
時前でDockerfileを作らなくていいので、圧倒的に楽ですw
RubyやPostgreSQLのバージョンなどは、Dockerのargsで指定できるので試してください!
既存のプロダクトやインターン、Rails Follow-upとかで積極的に使っていきたいと思います
では、よきRails Lifeを!