アプリケーションで問題が発生した際には、まずアプリケーションのトラブルシューティングで、特定のエラーが掲載されているかどうかを確認してください。そこに該当するエラーメッセージが表示されていなければ、以下についてのトラブルシューティングを行うことが推奨されます。
- データベース接続の問題
- 環境変数
- 変数の誤り
- 特殊文字
- Base64でエンコードした変数
- 外部アプリケーションとの接続性の問題
- startコマンドの誤り(たとえば、
npm
しか利用できない状況でyarn
を使用しようとしている場合や、必要な起動スクリプトがないpackage.jsonファイルが使われている場合など) - パーミッションの問題
- ファイルが見つからない状態
一般的なトラブルシューティングの手順
- アプリケーションがDockerfileを用いて作成されている場合、Bashがコンテナにインストールされていることを確認してください。通常、ベースイメージ(Ubuntuなど)にはシェルパッケージが含まれており、デフォルトでこれが動作します。ただし合理化されたコンテナにはシェルパッケージが含まれていない可能性があり、その場合には別途追加する必要があります。シェルパッケージの追加方法は、ベースイメージにより異なります。
- Alpine:
apk add bash
- Ubuntu/Debian:
apt install bash
- Fedora:
dnf install bash
- Alpine:
- startコマンドを
sleep 9999
に変更します。これでポッドが実行状態になり、ウェブターミナルからポッドと対話できるようになります。ウェブプロセスを編集してstartコマンドを変更します(「プロセス」>「ランタイムプロセス」>「ウェブプロセス」>「プロセスの編集」)。 - ウェブターミナルを開きます。
- 環境変数をチェックします。ウェブターミナルで、
printenv
と入力し、環境変数が期待通りのものになっていることを確認してください。 - アプリケーションを手動で実行します。デバッグオプションを有効にして、アプリケーションを手動で実行してみてください。実際のコマンドはアプリケーションによって異なります。詳細については、アプリケーションのビルドに使用している言語やパッケージマネージャのドキュメントをご確認ください。