今回はDocker環境でbinding.pryを使用する手順について簡単に解説したいと思います。Docker環境でbinding.pryを実行するにはちょっとした設定が必要ですが、そこまで難しくないのでこの機会に準備しておきましょう。【Rails】Rails開発者に絶対おすすめしたいデバッグ手法5選(初心者向け)Railsの開発で活躍するデバッグ方法5選を紹介しています。Railsでは様々なデバッグ手法やgemが用意されていますが、今回はその中でも頻繁に使われるもののみをまとめてみました。デバッグ手法に迷った時の参考にしてください。コンテナIDでrailsサーバーにattachまとめ参考binding.pryを実行する手順Docker環境上でbinding.pryを実行する手順を簡単にまとめると以下のようになります。コンテナIDでrailsサーバーにattachでは上記を把握した上で、具体的に見ていきましょう。‘pry-rails’をインストールします。--no-cachegemインストール後、buildを再度実行することでDocker環境でも適用できるようになります。キャッシュでbuildしてしまうことを避けるため、念のため「–no-cache」オプションを付与しています。docker-compose.ymlの書き換え続いてdocker-compose.ymlを書き換え、binding.pryで処理が止まるように設定します。以下の2行をdocker-compose.ymlのapp(もしくはweb)以下に配置しましょう。true上記を追記した後のコードは以下のように形になるかと思います。true上記コードはあくまで一例です。binding.pryの記述ここまででDocker環境でbinding.pryを使用する設定が完了しました。実際に処理を止めたい箇所にbinding.pryを記載しましょう。今回はcreateアクションの中にbinding.pryを仕込んでみました。endendここでDockerを立ち上げ、実際にcreateアクションで処理が止まるか確認します。up以下のように、処理が止まっていることが確認できたら次の項目に進みましょう。t」を押し、別タブでターミナルを開きます。ps」コマンドを入力し、実行中のコンテナとそのIDを確認しましょう。test_db_1上記の場合、使用するコンテナIDはe6edae8815d4になります。コンテナID」を入力しEnterキーを押しましょう。今回の場合だとコマンドは以下になります。e6edae8815d4するとpryが開かれるので、試しにparamsやshow-modelsと入力してみてください。:ActiveStorage::Blob)pryが開かない場合は、数回Enterキーを叩くことで解決できます。デバッグを終了したい時は、いつもと同じようにexitを入力することでbinding.pryを終了することができます。exitまとめDocker環境でbinding.pryを使用する手順を簡単にまとめたものは以下になります。コンテナIDでrailsサーバーにattach参考briankung/docker-pry-rails.md:https://gist.github.com/briankung/ebfb567d149209d2d308576a6a34e5d8今回はDocker環境でbinding.pryを使用する手順について解説しました。Docker環境でもデバッグは絶対に必要になってきますので、ぜひこの機会に理解して使えるようにしておきましょう。Consider...Railsエンジニアちばよしはる銀座にあるヘルステック企業のRailsエンジニア。初心者から中級者向けに記事を更新しています。お酒とカレーと競馬が好き。TechTechMedia。