Język Frankfurt nad Menem, Niemcy
Nodion rozpoznaje aplikację PHP po pliku composer.json. Buildpack PHP instaluje Twoje zależności za pomocą Composera i udostępnia aplikację przez FrankenPHP z katalogu public/; jeśli wolisz, zamiast tego php-fpm działa za serwerem nginx lub Apache. Aplikacja działa we Frankfurcie nad Menem, w razie potrzeby obok zarządzanej bazy danych MySQL lub PostgreSQL.
composer.json w katalogu ustawionym jako Base directorycomposer.json. Repozytorium z samym index.php nie zostanie wykryte; jeśli nie masz jeszcze composer.json, wystarczy mały plik taki jak ten. Build uruchamia composer install --no-dev --optimize-autoloader, więc wszystko, czego aplikacja potrzebuje podczas działania, musi trafić do require, a nie do require-dev. Dodaj do repozytorium composer.lock, aby build zainstalował przetestowane przez Ciebie wersje. composer.json {
"require": {
"php": "8.4.*"
}
} public/ jako document root. Jeśli tego katalogu nie ma, Nodion bierze web/, a gdy brakuje obu, katalog główny repozytorium. Umieść index.php i swoje zasoby w public/, a vendor/, konfigurację i kod źródłowy przechowuj poza tym katalogiem, aby serwowane były tylko pliki przeznaczone dla WWW. composer.json
composer.lock
src/
public/
index.php BP_PHP_SERVER z wartością nginx lub apache i zaznacz Build. Apache odczytuje też Twoje pliki .htaccess. Każda inna wartość kończy build błędem. DATABASE_URL przy następnym wdrożeniu, tylko podczas działania. Hasła i klucze API oznacz jako sekrety. release: w Procfile jest wykonywana raz na build, po buildzie i przed startem nowej wersji. Jeśli się nie powiedzie, wdrożenie zostaje zatrzymane, a działająca wersja nadal obsługuje ruch. Narzędzie do migracji, na przykład Doctrine Migrations lub Phinx, trzymaj w require. Procfile release: vendor/bin/doctrine-migrations migrate --no-interaction .php-version, potem require.php w composer.json; bez żadnego z nich dostajesz PHP 8.3. Zakres wybiera najnowsze pasujące wydanie, więc "^8.2" daje PHP 8.5. Aby zostać przy jednej linii wersji, wpisz 8.3 do .php-version albo ustaw wymaganie "8.3.*".bin/console razem z symfony.lock, podczas buildu uruchamia bin/console cache:warmup --env=prod, a podczas działania ustawia APP_ENV=prod i APP_DEBUG=0. Dodaj też APP_ENV=prod z zaznaczoną opcją Build, aby skrypty Composera uruchamiane podczas instalacji nie używały dev z Twojego .env. Nodion nie uruchamia asset-map:compile; jeśli korzystasz z AssetMappera, dodaj to polecenie do auto-scripts w composer.json. Do buildów z Encore lub Vite użyj Dockerfile.worker: php bin/worker.php razem z jawną linią web:, bo bez niej pierwszy wpis w Procfile inny niż release: staje się domyślnym poleceniem. Log buildu pokazuje domyślne polecenie startowe; dla FrankenPHP działa web: frankenphp php-server --listen :$PORT --root public/. Następnie dodaj w zakładce Processes proces o nazwie worker bez portu./ odpowie kodem 2xx lub 3xx. Jeśli / zwraca 401 lub 404, ustaw w ustawieniach aplikacji ścieżkę health checku, która zwraca 200.DATABASE_URL, REDIS_URL lub CLICKHOUSE_URL. 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. Tak. Nodion wykrywa PHP wyłącznie po composer.json; wystarczy plik, który wymaga tylko PHP. Pliki PHP, które mają być serwowane, umieść w public/.
Tak. Ustaw BP_PHP_SERVER=nginx lub BP_PHP_SERVER=apache jako zmienną z opcją Build, a Nodion uruchomi php-fpm za serwerem nginx lub Apache httpd. Bez tej zmiennej aplikację udostępnia FrankenPHP.
PHP 8.2, 8.3, 8.4 i 8.5, domyślnie 8.3. Przypnij jedną z nich w .php-version lub w composer.json. Jeśli zażądasz wersji, której Nodion już nie oferuje, build zakończy się czytelnym komunikatem błędu, zamiast po cichu przełączyć wersję.
Nie. Buildpack PHP instaluje za Ciebie PHP, Composera i serwer WWW. Jeśli w Twoim repozytorium jest Dockerfile, formularz tworzenia aplikacji wybiera tę strategię i Nodion buduje wtedy obraz z Dockerfile.
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.
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.
Instancja aplikacji kosztuje od 1 EUR miesięcznie. Konfiguracja z ramki kosztuje 2 EUR miesięcznie: Aplikacja 2 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.
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.
Zyskaj do 15 € środków na start przy rejestracji.
lub przez e-mail
Nowości produktowe, bez spamu. Możesz zrezygnować w każdej chwili.
Zapisano pomyślnie.