ホームRailsの覚書Vue.jsの覚書MenuSidebarPrevNextSearchdocker-composeでデプロイする際に、RailsがDBプロセスの起動を待つようにするはじめにdocker-composeでアプリをデプロイする際、pumaにせよunicornにせよ、Railsのアプリが立ち上がる前にデータベースが起動している必要があります。これはデータベースのコンテナが起動しているという意味ではなく、データベースのプロセスが立ち上がり、ポートが外部に向けて開放されており、他所から利用が可能になっている必要がある、ということでございます。これを確認するための機構がdocker-composeにはありません。実装そこでwait-for-itと呼ばれるスクリプトを利用します。これをdocker-compseのcommandから呼び出します。db:createwait-for-itは特定のポートに対して、アクセスが可能であるか否かを判断するためのスクリプトです。アクセスが不可能であった場合、文字通りアクセスが可能になるのを待ってくれます。これを間に挟んでから、DBにアクセスすることで、望んだとおりの結果を得ることができます。