När du distribuerar en applikation kan du exempelvis möta något av följande fel om det uppstår ett problem med distribueringen:

Det uppstod ett lanserings-fel i din app. Kontrollera vår dokumentation, och kontakta vårt support-team om du fortsätter att uppleva problem.

Byggprocessen misslyckades
Okänd typ av byggfel.

Om utrullningsprocessen misslyckas omedelbart eller om byggprocessen misslyckas så skapas inga pods. Som ett resultat så finns det heller inga körtidsloggar. Ett felaktigt startkommando i webbprocessen är oftast orsaken (eller en felaktig ENTRYPOINT i Dockerfilen om din applikation är byggd från en Dockerfil).

Om utbyggnadsprocessen körs i en minut eller två och sedan misslyckas, så betyder detta vanligtvis att pods skapades. Något gick dock fel och processen stoppades. I det här fallet så bör du kontrollera applikationkörningsloggarna för att identifiera eventuella felmeddelanden. Felmeddelandena kan exempelvis hjälpa dig att identifiera fel i applikationens kod så att du kan felsöka problemet.

Om du inte kan identifiera problemet så kan du kontrollera följande, och om problemet kvarstår ska du kontakta vårt supportteam.

Git-arkiv

Kontrollera ditt arkiv för att se till att alla korrekta filer har lagts in i arkivet för din applikation.

Språk

När du lägger till din applikation och väljer att använda Nixpacks eller Buildpacks för att skapa din applikations container-avbildning, ställer vi automatiskt in en container för din applikation. Om du använder Nixpacks eller Buildpacks måste du se till att rätt språkversion finns i applikationens filer. För mer information, se vår dokumentation om hur du anger en språkversion.

Starta kommandot eller ENTRYPOINT

Startkommandot eller ENTRYPOINT för webbprocessen startar applikationen. Som ett resultat av ett felaktigt startkommando så kommer applikationen inte att köras. Du kan kontrollera kommandot på ett par ställen i MyKinsta.

  • Processer > Körtids-processer > Webbprocess
  • Eller Distribueringar > Historik, välj en distribuering för att visa detaljerna och Utrullnings process i detaljerna.
Framgångsrik utrullningsprocess i Detaljer om distribuering.
Framgångsrik utrullningsprocess i Detaljer om distribuering.
Misslyckad utrullningsprocess i detaljerna om distribuering.
Misslyckad utrullningsprocess i detaljerna om distribuering.

Om din applikation använder en Dockerfil för att konfigurera containeravbildningen så måste du ange ENTRYPOINT i Dockerfilen för att köra en container. Mer information om hur du anger din applikations ENTRYPOINT finns i Dockerfil-referensen.

Vill du ha mer information om vilket kommando som du ska använda baserat på ditt programspråk? Läs isåfall vår dokumentation om Kommando för applikationsstart.

Bygg sökväg eller Dockerfile-kontext

När du lägger till din applikation väljer du att antingen ställa in containerbilden automatiskt med ett Nixpack eller ett Buildpack eller använda en Dockerfile för att ställa in containerbilden.

  • Byggväg: Detta gäller endast Nixpacks och Buildpacks. Detta är sökvägen i förvaret till de filer som krävs för att bygga applikationen. De flesta applikationer är byggda från arkivroten, och Byggvägen sätter detta som standard (.). Om du har en annan byggväg, ange den här. Om din applikation till exempel behöver byggas från en underkatalog (t.ex. app), anger du den sökvägen till underkatalogen i fältet Bygg sökväg: app. Detta är också användbart om du har en monorepo.
  • Kontext: Detta gäller endast Dockerfiler. Det här är sökvägen i arkivet vi behöver tillgång till så att vi kan bygga din applikation. De flesta applikationer är byggda från arkivroten, och du kan ange arkivroten (.) i fältet Kontext. Om din applikation behöver byggas från en underkatalog (t.ex. en app), anger du sökvägen till underkatalogen i fältet Kontext: app.

Du kan visa och ändra Byggvägen eller Dockerfile-kontexten i programmets inställningar.

Miljövariabler

Miljövariabler förser din applikaion med information som kommer utifrån. En felaktig miljövariabel kan exempelvis hindra applikationen från att köras. Du kan kontrollera dina miljövariabler i Inställningar > Miljövariabler.

Miljövariabler för din applikation.
Miljövariabler för din applikation.

Bekräfta att rätt miljövariabler finns och att de innehåller giltiga värden. Det finns ett par viktiga saker att tänka på när du skapar och kontrollerar miljövariabler:

  • Komma tolkas som avgränsare av utrullningsprocessen, så de kan inte användas i miljövariabler.
  • Beroende på när de är tillgängliga under distribueringen kan parenteser göra att bygg-processen eller lanserings-processen misslyckas, och de kan inte användas i miljövariabler.
  • Varje nyckel måste vara unik och en nyckel kan endast läggas till en gång.
  • Undantagna dubbla citattecken kommer antingen att ignoreras eller göra att lanseringsprocessen misslyckas.

Interna anslutningar och byggprocessen

Interna anslutningar är endast tillgängliga under körning; de är inte tillgängliga under byggprocessen.

Om ditt program försöker ansluta till en databas med en intern anslutning under byggprocessen, orsakar detta ett fel som säger att databasen inte körs, vilket gör att bygget misslyckas. Detta förväntas eftersom den interna anslutningen inte är aktiv under bygget; den kan endast användas under körning.

Det finns ett par sätt att kringgå detta.

Alternativ 1: Flytta logiken som ansluter till databasen från programmets byggkommando till startkommandot. Till exempel: om du har ett kommando som prisma migrate i byggprocessen och flyttar det kommandot till startkommandot, kommer din applikation bara att komma åt databasen under körning, och bygget kommer att lyckas.

Alternativ 2: Lägg till separata miljövariabler efter behov för databasanslutningen, en tillgänglig för byggprocessen och den andra endast för körning. Nycklarna kan vara desamma (t.ex. DB_CONNECTION_URL) så länge som en endast är tillgänglig under byggprocessen och den andra endast tillgänglig under körning. Använd databasens Externa anslutningsdetaljer (Databaser > dbnamn > Info > Externa anslutningar) för värdena för eventuella variabler som ska användas i byggprocessen.

Port

För Applikationshosting så är endast portarna 80 och 443 öppna. Om din applikation exponerar några portar så måste du använda 8080.

Ogiltigt paketnamn

Ett ogiltigt paketnamn i package.json kan orsaka ett fel. Använd exempelvis inte ”js” eller ”nod” i namnet. För mer information, se detaljerna för npms package.json-hantering i npm Docs.

Relaterad dokumentation