Startkommandot är det kommando som behövs för att starta din applikation. Det är därför ett måste för alla applikationer, oavsett om de har skapats med ett buildpack eller en Docker-fil. Detta kommando kan dessutom skilja sig åt beroende på applikationens språk. Vi har skrivit ner lite exempel från några vanliga språk nedan.

Startkommando från ett buildpack

När en applikation skapas med ett buildpack försöker vi att härleda startkommandot baserat på innehållet i applikationens arkiv. Du kan dessutom ange startkommandot i steget Resurser när du lägger till applikationen.

Startkommando från en Dockerfil

Använder din applikation en Docker-fil för att konfigurera din container-avbildning? Då måste du ange instruktionen ENTRYPOINT eller CMD i Docker-filen för att köra en container. Mer information om hur du anger applikationens instruktioner finns exempelvis i Dockerfil-referensen eller Bästa praxis för att skriva Dockerfiler.

Kedja kommandon

Om du vill lägga till flera Start-kommandon använder du && för att kedja ihop kommandona på följande sätt:

command one && command two

Visa startkommandot

Du kan kontrollera Startkommandot på ett par ställen i MyKinsta:

  • Processer > Körtids-processer > Webbprocess.
  • Eller Distribueringar > Historik, välj sedan en distribuering för att visa detaljerna och klicka därefter på Utrullningsprocess under Distribuerings-förlopp.
Startkommandot som används för distribueringen visas i utrullnings-processen.
Startkommandot som används för distribueringen visas i utrullnings-processen.

Redigera startkommandot

Gå till Processer > Körtids-processer och redigera sedan webbprocessen för att ändra startkommandot. Applikationen distribueras därefter automatiskt med det uppdaterade startkommandot.

Exempel på språk för startkommandon

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

Om du vill använda ett annat kommando måste du ändra webbprocessen i MyKinsta.

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

Node.js med en Dockerfil

När du skapar appen skapar Kinsta sedan en process från CMD-instruktionen.

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

Om du ändrar detta kommando i arkivet ändras inte processen som standard. Du måste därför redigera processen i din applikations Processer i MyKinsta.

Ruby

Startkommando för Ruby on Rails

rails server

Ruby on Rails med en Dockerfil:

När du först skapar applikationen skapar Kinsta en process från ENTRYPOINT-instruktionen.

ENTRYPOINT ["entrypoint.sh"]

Om du ändrar detta kommando i arkivet ändras inte processen som standard. Du måste därför redigera processen i din applikations Processer i MyKinsta.

Java

Java: När du distribuerar en applikation skapar Kinsta automatiskt processer baserat på Procfile i kodförrådets rot.

Scala

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

Relaterad dokumentation