page:guides:symfony:build and start
Configure build and start for Symfony
Build and start for a Symfony app on Ample. Verified on Symfony: the app built and started with the documented commands and answered on its public HTTPS URL. Build and start: composer install --no-dev from composer.lock with Symfony Runtime's dotenv disabled (extra.runtime.disable_dotenv; .env never ships, its values arrive as encrypted env, and compile-time parameters such as DEFAULT_URI need a default), then FrankenPHP serving public/ (php-server with the index.php fallback) reading PORT on the php-8.5 template with APP_ENV=prod.
Workflow Steps
Build and start
composer install --no-devfromcomposer.lockwith Symfony Runtime's dotenv disabled (extra.runtime.disable_dotenv; .env never ships, its values arrive as encrypted env, and compile-time parameters such as DEFAULT_URI need a default), then FrankenPHP servingpublic/(php-server with theindex.phpfallback) readingPORTon thephp-8.5template withAPP_ENV=prod; the server must bind0.0.0.0onPORT.Deploy
Run the synchronous deploy once and read the result.
Command:ample deploy . --name --publicVerify
Fetch the live URL on the example; on failure read the build and runtime logs.
Command:ample logs --kind build
Prerequisites
- A Symfony project with
composer install --no-devfromcomposer.lockwith Symfony Runtime's dotenv disabled. - An Ample account token with
servers:write.
Tested Configuration
- Template:
php-8.5 - Runtime:
php - Size:
s-1vcpu-1gb - Install Command:
composer install --no-dev --prefer-dist --no-interaction --no-progress --optimize-autoloader - Start Command:
frankenphp php-server --listen :$PORT --root public
Cost Estimate
- Currency: USD
- Monthly Amount: 5.0
- Basis: size prices from pricing.toml
- Components:
- Name: app server
Size:s-1vcpu-1gb
Quantity: 1.0
Monthly Amount: 5.0
- Name: app server
Limitations
- Verified on the
php-8.5template ats-1vcpu-1gb; other sizes and Symfony major versions are not verified. - Region, compliance attestations and request-duration limits are unknown and not claimed.