Kinsta erbjuder Buildpacks, ett projekt med öppen källkod som underhålls av Heroku. Med detta kan du exempelvis bestämma och skapa en container för din applikation baserat på ditt kodförråd. Buildpacks är med andra ord skript som körs när din applikation distribueras. Som ett resultat installeras beroenden för din applikation och din miljö konfigureras.

Du kan exempelvis välja Buildpacks när du lägger till en applikation eller genom att ändra alternativet Byggmiljö i applikations-inställningarna (Inställningar > Grundläggande detaljer > Redigera detaljer).

Språk som stöds

Vi stöder följande programspråk för Buildpacks:

Ifall du vill använda en annan språkversion för din applikation måste du med andra ord ange versionen i applikationens filer.

Det kan hända att du vill använda ett språk som inte stöds av Buildpack. Då kan du exempelvis kontrollera om det är ett språk som stöds av Nixpacks. Om det inte gör det måste du därefter välja en Dockerfil. När du lägger till din applikation kan du därför välja alternativet Använd Nixpacks för att konfigurera container-avbildning eller Använd Dockerfil för att konfigurera container-avbildning.

Konfigurera Buildpacks

Vissa applikationer kräver ingen konfiguration, men det kan exempelvis krävas specialiserade kommandon och alternativ för att köras:

Miljövariabler – Du kan exempelvis behöva ställa in vissa miljövariabler för att köra din applikation.

Processer – Kinsta kan upptäcka ditt webb-processkommando automatiskt. Du kan ändra detta om det krävs, och dessutom definiera ytterligare processer.

Processer i en Procfile – Du kanske exempelvis vill definiera dina processer i en Procfile inom applikationens kod.

Lägg till eller redigera Buildpacks

Du kan hantera buildpacks på sidan Inställningar i din applikation. Klicka på Lägg till buildpack för att lägga till ytterligare buildpack. Om du vill ta bort eller ändra ordningen på applikationens buildpacks klickar du därefter på Redigera buildpacks.

När du lägger till ett buildpack läggs det automatiskt till i slutet av listan över buildpacks. Du kan med andra ord behöva redigera ordningen på dina buildpacks. Dra eller släpp därefter dina buildpacks för att ändra deras ordning i modal-/popup-fönstret Redigera byggpaket.

Binära kataloger för buildpack

Med buildpacks kan de binära katalogerna skilja sig från de binära standard-katalogerna för applikations-språket. I följande tabell visas därför de binära kataloger som används för varje buildpack-språk:

Språk Katalog
Node.js /layers/heroku_nodejs-engine/dist/bin/node
Ruby /usr/bin/ruby
Python /usr/bin/python
Java /layers/heroku_jvm/openjdk/bin/java
Scala Scala har för det första ingen specifik standardmässig binär sökväg som vissa andra kompilerade språk. När du kompilerar ett Scala-applikation genereras därför bytecode som körs på Java Virtual Machine (JVM).

De kompilerade Scala-klasserna lagras därefter vanligtvis i en katalog-struktur som speglar paket-strukturen i din kod. Detta liknar hur Java-klasser är organiserade. När du kompilerar en Scala-källfil placeras de kompilerade .class-filerna med andra ord standardmässigt i samma katalog som källkoden (inom en underkatalog-struktur baserad på paket-deklarationerna).

Vid behov kan du sammanfattningsvis installera Scalas körtids-verktyg med hjälp av en Dockerfil istället för ett buildpack.

PHP /arbetsyta/.heroku/php/bin/
Go Go har inte en specifik standardmässig binär sökväg som vissa andra kompilerade språk. När du kompilerar ett Go-applikation placeras den resulterande binära körbara filen därför i samma katalog som din källkod som standard.

Om det behövs kan du exempelvis installera Go’s körtids-verktyg med en Docker-fil istället för ett buildpack.

Relaterad dokumentation