Il comando Start è il comando di cui MyKinsta ha bisogno per avviare un’applicazione. È indispensabile per qualsiasi applicazione, sia essa creata con un buildpack o con un Dockerfile.

Quando un’applicazione viene creata con un buildpack, cerchiamo di dedurre il comando Start in base al contenuto del repository dell’applicazione, ma è anche possibile specificare il comando Start nella fase delle Risorse, quando si aggiunge l’applicazione. Per aggiungere più comandi Start, usare && per concatenare i comandi in questo modo: command one && command two.

Se l’applicazione utilizza un Dockerfile per configurare l’immagine del container, è necessario specificare ENTRYPOINT nel Dockerfile per eseguire un container. Per maggiori informazioni su come specificare l’ENTRYPOINT dell’applicazione, si legga la documentazione del Dockerfile.

Il comando Start varia a seconda del linguaggio dell’applicazione.

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

Se si vuole utilizzare un altro comando, è necessario modificare il processo web di MyKinsta.

"scripts": {
"start": "node server.js"
},

Node.js con un Dockerfile

Quando si crea l’applicazione, Kinsta crea un processo dall’istruzione CMD.

CMD ["npm", "run", "start"]

Se si modifica questo comando nel repository, il processo non viene modificato di default, quindi è necessario modificare il processo nei Processi dell’applicazione in MyKinsta.

Ruby

Ruby on Rails: Quando si crea l’applicazione per la prima volta, Kinsta crea un processo dall’istruzione ENTRYPOINT.

ENTRYPOINT ["entrypoint.sh"]

Se si modifica questo comando nel repository, il processo non viene modificato di default, quindi è necessario modificare il processo nei Processi dell’applicazione in MyKinsta.

Java

Java: Quando si distribuisce un’applicazione, Kinsta crea automaticamente dei processi basati sul Procfile presente nella root del repository.

Scala

Scala target/universal/stage/bin/ -Dhttp.port=$PORT