Przewodnik wdrożeniowy Frankfurt nad Menem, Niemcy

Wdróż Docker Compose na Nodion

Nodion może jeden raz odczytać docker-compose.yml, przy tworzeniu aplikacji: bazy danych i cache stają się usługami zarządzanymi, a pozostałe usługi procesami jednej aplikacji. Import jest eksperymentalny, więc przejrzyj plan, zanim utworzysz aplikację. Potem wszystko działa we Frankfurcie nad Menem.

Wdróż na Nodion ›

od 1 EUR / mies.

Do 15 € środków na start przy rejestracji

Odczytuje
docker-compose.yml lub compose.yml, raz przy tworzeniu
Tworzy
Jedna aplikacja z procesami, zarządzane bazy danych
Status
Eksperymentalny
Region
EU Central (Frankfurt)

Wdróż Docker Compose krok po kroku

  1. Sprawdź plik Compose Nodion odczytuje docker-compose.yml, docker-compose.yaml, compose.yml lub compose.yaml i bierze plik położony najbliżej katalogu głównego repozytorium. Oprócz baz danych i cache potrzebna jest co najmniej jedna usługa aplikacji; plik zawierający tylko bazy danych i cache jest ignorowany. docker-compose.yml
    services:
      web:
        build: .
        environment:
          DATABASE_URL: postgres://app:app@db:5432/app
          REDIS_URL: redis://cache:6379
      db:
        image: postgres:17
      cache:
        image: valkey/valkey:8
  2. Wybierz Docker Compose przy tworzeniu aplikacji Utwórz aplikację ze swojego repozytorium w regionie EU Central. Gdy skanowanie znajdzie odpowiedni plik Compose, pojawi się opcja Docker Compose; nigdy nie jest zaznaczona domyślnie. Wybierz ją i przejrzyj plan: przed utworzeniem aplikacji możesz jeszcze wybrać rozmiar i liczbę instancji dla każdego procesu oraz zmienić rozmiary wolumenów.
  3. Zobacz, co staje się usługą zarządzaną Nodion kieruje się nazwą obrazu: z postgres i postgis powstaje Managed PostgreSQL, z pgvector pgvector, z redis i valkey Valkey, z mysql i mariadb MySQL, z clickhouse ClickHouse, a z minio bucket. Każda inna usługa uruchamia swój obraz jako proces tej jednej aplikacji. Tag obrazu nie decyduje o wersji bazy danych, a użytkowników i hasła nadaje Nodion. Managed PostgreSQL nie ma rozszerzenia PostGIS, więc aplikacja, która potrzebuje PostGIS, po imporcie traci funkcje przestrzenne; taką bazę danych pozostaw poza plikiem Compose.
  4. Sprawdź zmienne połączenia Zmienna usługi aplikacji, która wskazuje inną usługę po nazwie, jak @db:5432 powyżej, jest traktowana jako podłączenie: Nodion przy wdrożeniu wstawia rzeczywisty adres. W przeciwnym razie bazy danych trafiają do aplikacji jako DATABASE_URL, a Valkey jako REDIS_URL. Z pozostałych zmiennych kopiowane są tylko te z głównej usługi aplikacji, a wartości wyglądające na sekrety są oznaczane jako sekrety.
  5. Od tej pory zarządzaj aplikacją w dashboardzie Pierwsze wdrożenie czeka, aż bazy danych będą gotowe. Potem plik Compose nie jest już odczytywany: przy każdym pushu Nodion buduje aplikację za pomocą strategii Dockerfile lub Buildpacks wykrytej w tym samym repozytorium, a procesy, zmienne i rozmiary zmieniasz w dashboardzie.

Warto wiedzieć

  • Eksperymentalny i jednorazowyImport to skrót do pierwszej konfiguracji, a nie runtime Compose. Jeśli nie da się jednoznacznie przełożyć Twojego pliku, zbuduj tę samą konfigurację ręcznie: jedna aplikacja, baza danych podłączona w zakładce Environment i dodatkowe procesy w zakładce Processes.
  • Co Nodion ignorujeSieci, profile, healthchecki Compose, depends_on jako kolejność startu, deploy.replicas, bind mounty i anonimowe wolumeny. Druga usługa z własnym build: współdzieli jeden obraz aplikacji.
  • WolumenyNazwane wolumeny stają się wolumenami Nodion (domyślnie 5 GB, rozmiar można zmienić w planie) i są montowane w procesach, które z nich korzystają.

Czym Nodion zajmuje się za Ciebie

  • Wdrożenia bez przestojów Wypchnij zmiany do swojej gałęzi, a Nodion zbuduje nowy release. Ruch przełącza się, gdy nowe instancje przejdą health check; nieudany release nie wpływa na działającą wersję. Aplikacje z lokalnym wolumenem są natomiast uruchamiane ponownie, bo dysk należy do jednej instancji.
  • Bazy danych obok aplikacji Zarządzane PostgreSQL, pgvector, MySQL, Valkey i ClickHouse w tym samym regionie. Podłączone bazy danych trafiają do aplikacji jako DATABASE_URL, REDIS_URL lub CLICKHOUSE_URL.
  • Środowiska podglądu dla pull requestów Włącz środowiska podglądu, a każdy pull request z Twojego repozytorium dostanie własną aplikację z własnym adresem URL i nowymi, pustymi bazami danych, tworzoną automatycznie lub ręcznie. Forki i pull requesty od botów są pomijane.
  • Workery, zadania cron i skalowanie Uruchamiaj workery jako dodatkowe procesy tej samej aplikacji, planuj zadania w zakładce Cron i skaluj każdy proces do 16 instancji.
  • Etap release W przypadku buildpacków linia release: w Procfile uruchamia się przy każdym nowym buildzie. Aplikacje z Dockerfile, a także ponowne wdrożenia i rollbacki do wcześniejszego obrazu, korzystają z polecenia release ustawionego w samej aplikacji, które ma też pierwszeństwo przed linią z Procfile. W przypadku stron statycznych krok release działa w obrazie zawierającym tylko zbudowane pliki.
  • Logi i metryki W dashboardzie znajdziesz logi z builda, release'u i działania aplikacji oraz metryki CPU, pamięci, dysku i sieci dla każdej instancji.
  • Domeny i HTTPS Domyślna nazwa hosta z HTTPS od pierwszego wdrożenia; Twoje własne domeny automatycznie dostają certyfikaty.

Warto przeczytać

Docker Compose na Nodion: pytania i odpowiedzi

Czy Nodion uruchamia docker compose up?

Nie. Nodion odczytuje plik raz, przy tworzeniu aplikacji, i zamienia go w jedną aplikację z procesami, zarządzanymi bazami danych i wolumenami. Nie utrzymuje działającego projektu Compose, nie stosuje sieci i nie odczytuje pliku ponownie.

Czy zmiany w moim pliku Compose zadziałają przy następnym wdrożeniu?

Nie. Po utworzeniu aplikacją zarządzasz w dashboardzie: tam dodajesz proces, zmienną lub bazę danych. Edycja pliku Compose w Gicie niczego nie zmienia.

Co się dzieje z MongoDB lub innymi usługami bez wersji zarządzanej?

Uruchamiają swój obraz jako proces aplikacji. Nodion nie oferuje zarządzanego MongoDB, więc o taką usługę i jej dane dbasz samodzielnie.

Jaką wersję bazy danych dostanę?

Aktualną domyślną wersję Nodion dla tego silnika, a nie wersję z tagu Twojego obrazu. Jeśli potrzebujesz konkretnej wersji, pomiń bazę danych w pliku Compose, utwórz ją w dashboardzie i podłącz do aplikacji.

Gdzie działa moja aplikacja Docker Compose?

W regionie EU Central we Frankfurcie nad Menem (Niemcy). Build, rejestr, aplikacja oraz jej bazy danych, wolumeny, buckety, logi i metryki pozostają w tym regionie, a API i warstwa sterowania (control plane) Nodion są hostowane w Niemczech. Nodion GmbH ma siedzibę w Stuttgarcie.

Czy mogę wykorzystywać Docker Compose zgodnie z RODO?

Nodion zapewnia do tego podstawy: Nodion GmbH ma siedzibę w Stuttgarcie (Niemcy), w regionie Frankfurt nad Menem aplikacja, jej bazy danych i wolumeny działają w Niemczech, a umowę powierzenia przetwarzania danych (DPA, art. 28 RODO) zawierasz elektronicznie w dashboardzie. To, czy Twoje wdrożenie spełnia wymogi RODO, zależy też od tego, jak skonfigurujesz aplikację i jak z niej korzystasz.

Ile kosztuje uruchomienie Docker Compose na Nodion?

Instancja aplikacji kosztuje od 1 EUR miesięcznie. Konfiguracja z ramki kosztuje 3.50 EUR miesięcznie: Aplikacja 2 EUR, PostgreSQL 1.50 EUR. Ceny są podane netto, a rozliczenie następuje co do sekundy. Większe rozmiary lub więcej instancji możesz wybrać w dowolnym momencie.

Czy mogę użyć własnej domeny dla mojej aplikacji Docker Compose?

Tak. Każda aplikacja dostaje domyślną nazwę hosta z HTTPS. Własną domenę dodasz w zakładce Domains aplikacji, a certyfikat TLS jest wystawiany i odnawiany automatycznie.

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.