Dockerfile

Dodaj Dockerfile do repozytorium. Nodion zbuduje z niego obraz i go uruchomi.

Przewodniki wdrożeniowe krok po kroku: Docker.

Na stronie Applications → New połącz repozytorium Giti wybierz Dockerfile. Skanowanie repozytorium domyślnie wybiera tę strategię, gdy znajdzie Dockerfile. Wybierz Buildpacks, jeśli chcesz, żeby Nodion zainstalował runtime.

Gotowy obraz (prebuilt image) pomija build z Git. Wypchnij obraz do rejestrui wdróż go. Import Docker Composeprzy tworzeniu aplikacji jest eksperymentalny i nie należy do tej strategii.

Co ustawiasz

  • Base directory: kontekst buildu, a w monorepo także miejsce, w którym leży Dockerfile.
  • Dockerfile name: zwykle Dockerfile. Skanowanie pokazuje też pliki Dockerfile.*.
  • Ports: wstępnie wypełniane portami TCP z EXPOSE w tym pliku. Dodaj lub usuń porty według potrzeb. Po utworzeniu aplikacji porty należą do procesu web.

Strategię, ścieżkę i Base directory możesz później zmienić w Settings. Zmiana obowiązuje od następnego wdrożenia.

Co robi build

  1. Klonuje gałąź.
  2. Używa Base directory jako kontekstu buildu. Uwzględnia znajdujący się tam plik .dockerignore. Katalog .git nigdy nie jest wysyłany.
  3. Buduje wskazany Dockerfile. Pliki wieloetapowe (multi-stage) działają. Nie ma wyboru etapu, więc uruchamiany jest domyślny, ostatni etap.
  4. Wypycha obraz i uruchamia z niego proces web.

Zmienne środowiskowe oznaczone jako Build w zakładce Environment są przekazywane jako argumenty buildu Dockera (ARG). Zmienne runtime zaczynają obowiązywać przy następnym wdrożeniu, gdy uruchomi się proces. Po zapisaniu sekret możesz nadpisać, ale nie możesz go odczytać.

Sekrety BuildKit (RUN --mount=type=secret) nie są obsługiwane. Wartości potrzebne w czasie buildu umieść w tych zmiennych Build.

Nasłuchiwanie i health check

Nodion nie ustawia PORT dla aplikacji z Dockerfile. Ta zmienna jest przeznaczona dla buildpacków. Twój serwer musi nasłuchiwać na porcie procesu web (z EXPOSE lub tym, który ustawisz w Processes). Jeśli ta lista jest pusta, Nodion używa EXPOSE z obrazu, a potem 8080.

Nasłuchuj na wszystkich interfejsach, nie tylko na localhost. Domyślnym poleceniem startowym jest CMD / ENTRYPOINT obrazu. W razie potrzeby nadpisz polecenie w procesie.

Gotowość (readiness) jest sprawdzana żądaniem HTTP GET wysyłanym na ścieżkę Health check path z Settings (domyślnie /) na porcie procesu web. Odpowiedź 2xx lub 3xx oznacza, że aplikacja jest gotowa. HEALTHCHECK Dockera w obrazie jest ignorowany.

Nodion uwzględnia USER obrazu. Nieznana nazwa użytkownika powoduje błąd wdrożenia.

Daj swojemu agentowi chmurę.

Zyskaj do 15 € środków na start przy rejestracji.

Kontynuuj z GitHub

lub przez e-mail

Bądź na bieżąco.

Nowości produktowe, bez spamu. Możesz zrezygnować w każdej chwili.