- Added Dockerfile for multi-stage build including PHP, Node.js, and Nginx. - Created docker-compose.coolify.yaml for service orchestration with app, workers, MariaDB, and Redis. - Introduced entrypoint.sh for initialization tasks like JWT key generation and database migrations. - Configured Nginx with default.conf for handling requests and routing to PHP-FPM. - Added php.ini with production settings and opcache configuration. - Set up supervisord.conf to manage PHP-FPM and Nginx processes. - Created frontend-domains.json for managing allowed frontend domains. - Added gen-cors-env.php script to generate CORS environment variables from frontend domains. - Updated framework.yaml to configure trusted proxies and headers. - Created .dockerignore to exclude unnecessary files from the Docker context. - Added .env.coolify.example for environment variable configuration. - Documented deployment steps and troubleshooting in coolify.md.
31 lines
825 B
Plaintext
31 lines
825 B
Plaintext
server {
|
|
listen 80 default_server;
|
|
server_name _;
|
|
root /app/public;
|
|
|
|
# Symfony front controller
|
|
location / {
|
|
try_files $uri /index.php$is_args$args;
|
|
}
|
|
|
|
location ~ ^/index\.php(/|$) {
|
|
fastcgi_pass 127.0.0.1:9000;
|
|
fastcgi_split_path_info ^(.+\.php)(/.*)$;
|
|
include fastcgi_params;
|
|
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
|
|
fastcgi_param DOCUMENT_ROOT $realpath_root;
|
|
# Forwarded headers from Traefik (Coolify) are trusted via Symfony trusted_proxies
|
|
internal;
|
|
}
|
|
|
|
# Block direct access to any other .php file
|
|
location ~ \.php$ {
|
|
return 404;
|
|
}
|
|
|
|
client_max_body_size 16m; # keep in sync with MAX_FILE_SIZE_BYTES / php.ini
|
|
|
|
error_log /dev/stderr warn;
|
|
access_log /dev/stdout;
|
|
}
|