MyKinstaでは、startコマンドを使用してアプリケーションを実行します。ビルドパックやDockerfileで構築したアプリケーションを含め、すべてのアプリケーションに必須のコマンドです。startコマンドは、アプリケーションの言語によって異なるため、以下にいくつかの主要言語の例をご紹介します。
アプリケーションをビルドパックで構築する場合、アプリケーションを追加する際、「リソース」セクションでstartコマンドを指定することができます。指定がないと、リポジトリに基づいてstartコマンドが推測されます。複数のstartコマンドを追加するには、&&
でコマンドを連結してください(例:command one && command two
)。
Dockerfileを使用してコンテナイメージを設定するには、コンテナの実行にDockerfileでENTRYPOINT
を指定します。アプリケーションのENTRYPOINT
を指定する方法についてはこちらをご覧ください。
startコマンドは、「デプロイメントの詳細」セクションで確認することができます。アプリケーションの「デプロイメント」>「履歴」に移動し、デプロイメントを選択して、画面下にある「ロールアウトプロセス」を展開してください。


Python
- Python:
python3 main.py
- Django:
gunicorn .wsgi
Go
Go:bin/<repo name>
PHP
- PHP:
heroku-php-apache2
- Laravel :
heroku-php-apache2 /public
php artisan serve --host 0.0.0.0 --port 8080
- Statamic:
heroku-php-apache2 public/
Node.js
Node.js
npm start
これ以外のコマンドを使用するには、ウェブプロセスの変更が必要になります。
"scripts": {
"start": "node server.js"
},
Dockerfileを使用したNode.jsアプリケーションの構築
Kinstaでは、アプリ作成時に、CMD
コマンドからプロセスを作成します。
CMD ["npm", "run", "start"]
リポジトリでこのコマンドを変更しても、デフォルトでは変更されないため、アプリケーションの「プロセス」画面での編集が必要です。
Ruby
Ruby on Rails:初めてのアプリケーション構築時に、ENTRYPOINT
コマンドからプロセスを作成します。
ENTRYPOINT ["entrypoint.sh"]
リポジトリでこのコマンドを変更しても、デフォルトでは変更されないため、アプリケーションの「プロセス」画面での編集が必要です。
Java
Java:アプリケーションをデプロイすると、リポジトリのルートにあるProcfileに基づき自動でプロセスが作成されます。
Scala
Scala:target/universal/stage/bin/ -Dhttp.port=$PORT