Med Applikation Hosting kan du bruge en Dockerfile til at oprette dit containerimage. Ved at bruge en Dockerfile får du mere kontrol, og du kan bruge næsten alle sprog, så du er ikke begrænset til de sprog, som Nixpacks eller Buildpacks understøtter.

En Dockerfile opsætter miljøet afhængigt af instruktionerne i Dockerfilen, som skal indeholde kommandoer til at installere sproget, tilstødende software og biblioteker, opsætte porten og starte webserveren. Kinsta indstiller automatisk PORT-miljøvariablen. Du behøver ikke selv at definere det eller hårdkode det i applikationen. For eksempel, i Node.js, brug process.env.PORT i din kode, når du henviser til serverporten.

Detaljerede oplysninger om, hvordan du opretter en Dockerfile, findes i Docker Docs.

Dockerfile-indstillinger

Hvis du vil bruge en Dockerfile, skal du, når du tilføjer et program, vælge muligheden for at Brug Dockerfile til at oprette et containerimage i Opbyg miljø.

Dockerfile-stien er stien til din Dockerfile i forhold til repository roden. Hvis din Dockerfil f.eks. er i repositoryroden, skal du indtaste Dockerfile i dette felt. Hvis din Dockerfil er i en undermappe med navnet app, skal du angive stien til Dockerfilen: app/Dockerfile.

Context er den sti i repositoriet, som vi skal have adgang til, så vi kan bygge din applikation. De fleste applikationer bygges fra repositoryroden, og du kan indtaste repositoryroden (.) i feltet Context. Hvis dit program skal bygges fra en undermappe (f.eks. app), skal du indtaste stien til den pågældende undermappe i feltet Context: app.

Udfyld resten af felterne for tilføjelse af din applikation, og klik på Tilføj applikation.

Tilføj et program med en Dockerfile build-type.
Tilføj et program med en Dockerfile-bygningstype.

Eksempel Dockerfile

For at hjælpe dig i gang er her et eksempel på Dockerfile, du kan bruge som reference eller som udgangspunkt.


FROM node:carbon

LABEL maintainer="Kinsta devs"

# Set the working directory to /app
WORKDIR /app

# Copy the current directory contents into the container at /app
COPY . /app

# Install any needed packages specified in package.json
RUN npm install

# Run app when the container launches
CMD ["npm", "start"]

Vær host for en database med en Dockerfile

Hvis du kombinerer persistent storage og en Dockerfile, kan du hoste stort set enhver database, du ønsker, med vores Applikation Hosting. Selv noget som en Microsoft SQL Server-database, som ikke understøttes på vores Database Hosting, kan implementeres. Hvis du kan containerisere den med en Dockerfile, kan du implementere den på Applikation Hosting.

Vedvarende lagring er nødvendig for at bevare dataene i din database. Hvis du implementerer en database på Applikation Hosting uden persistent storage, vil alle data gå tabt, hvis applikationen genstartes eller gen-implementeres.

Docker-billeder til mange databaser kan findes på Docker Hub. Se efter Docker Official Image-mærket, når du søger efter en database for at få de mest sikre og veldokumenterede billeder, der følger bedste praksis.

Relateret dokumentation