{"id":18663126,"url":"https://github.com/asapdotid/dcc-php-app-single","last_synced_at":"2025-12-30T21:29:36.485Z","repository":{"id":65313659,"uuid":"585175958","full_name":"asapdotid/dcc-php-app-single","owner":"asapdotid","description":"Docker Compose PHP + Nginx","archived":false,"fork":false,"pushed_at":"2023-03-01T11:21:34.000Z","size":28,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-27T16:43:18.155Z","etag":null,"topics":["docker","docker-compose","laravel","nginx","php","php-fpm","web","webserver"],"latest_commit_sha":null,"homepage":"","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/asapdotid.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2023-01-04T14:08:33.000Z","updated_at":"2023-05-29T13:07:04.000Z","dependencies_parsed_at":"2023-02-18T18:01:20.477Z","dependency_job_id":null,"html_url":"https://github.com/asapdotid/dcc-php-app-single","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asapdotid%2Fdcc-php-app-single","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asapdotid%2Fdcc-php-app-single/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asapdotid%2Fdcc-php-app-single/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/asapdotid%2Fdcc-php-app-single/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/asapdotid","download_url":"https://codeload.github.com/asapdotid/dcc-php-app-single/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239487366,"owners_count":19646992,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","docker-compose","laravel","nginx","php","php-fpm","web","webserver"],"created_at":"2024-11-07T08:15:12.162Z","updated_at":"2025-12-30T21:29:36.445Z","avatar_url":"https://github.com/asapdotid.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Docker Compose PHP + Nginx\n\nCustom image PHP-FPM 8.1.x and Nginx 1.22 (stable) `asapdotid/php-nginx:\u003cversion\u003e` as `compose image`.\nBase image from `Webdevops` **PHP** and **PHP-NGINX**\n\n## Docker Compose environment variables\n\n```\nHTTP_PORT=8080\nHTTPS_PORT=9443\nAPPLICATION_UID=1000\nAPPLICATION_GID=1000\nPHP_POST_MAX_SIZE=50M\nPHP_UPLOAD_MAX_FILESIZE=50M\nSERVICE_NGINX_CLIENT_MAX_BODY_SIZE=50M\nPROJECT_APP_DIR=/home/application/laravel\nSUPERVISOR_APP_DIR=${PWD}/docker/config/supervisor\nWEB_APP_CONTAINER_DIR=/app\nWEB_APP_DOCUMENT_ROOT=${WEB_APP_CONTAINER_DIR}/public\nWEB_APP_ALIAS_DOMAIN=app.jogjascript.com\n```\n\n## Web environment variables\n\n| Variable                             | Description                                                 | Default                            |\n| ------------------------------------ | ----------------------------------------------------------- | ---------------------------------- |\n| `CLI_SCRIPT`                         | Predefined CLI script for service                           | -                                  |\n| `APPLICATION_UID`                    | PHP-FPM UID (Effective user ID)                             | `1000`                             |\n| `APPLICATION_GID`                    | PHP-FPM GID (Effective group ID)                            | `1000`                             |\n| `WEB_DOCUMENT_ROOT`                  | Document root for Nginx                                     | `/app`                             |\n| `WEB_DOCUMENT_INDEX`                 | Document index (eg. `index.php`) for Nginx                  | `index.php`                        |\n| `WEB_ALIAS_DOMAIN`                   | Alias domains (eg. `*.vm`) for Nginx                        | `*.vm`                             |\n| `WEB_PHP_SOCKET`                     | PHP-FPM socket address                                      | 127.0.0.1:9000 (for php-\\* images) |\n| `SERVICE_NGINX_CLIENT_MAX_BODY_SIZE` | Nginx `client_max_body_size`                                | `50m` (when nginx is used)         |\n| `TIMEZONE`                           | Set `OS` and `PHP` timezone                                 | `Asia/Jakarta`                     |\n| `APP_ENV`                            | Set for `composer` install on `development` or `production` | `production`                       |\n| `SKIP_COMPOSER`                      | Skip action `composer install` = `true` or `false`          | `false`                            |\n\n## PHP.ini variables\n\nYou can specify eg. `php.memory_limit=256M` as dynamic env variable which will set `memory_limit = 256M` as php setting.\n\n| Environment variable                  | Description                             | Default   |\n| ------------------------------------- | --------------------------------------- | --------- |\n| `php.{setting-key}`                   | Sets the `{setting-key}` as php setting | -         |\n| `PHP_DATE_TIMEZONE`                   | `date.timezone`                         | `UTC`     |\n| `PHP_DISPLAY_ERRORS`                  | `display_errors`                        | `0`       |\n| `PHP_MEMORY_LIMIT`                    | `memory_limit`                          | `512M`    |\n| `PHP_MAX_EXECUTION_TIME`              | `max_execution_time`                    | `300`     |\n| `PHP_POST_MAX_SIZE`                   | `post_max_size`                         | `50M`     |\n| `PHP_UPLOAD_MAX_FILESIZE`             | `upload_max_filesize`                   | `50M`     |\n| `PHP_OPCACHE_MEMORY_CONSUMPTION`      | `opcache.memory_consumption`            | `256`     |\n| `PHP_OPCACHE_MAX_ACCELERATED_FILES`   | `opcache.max_accelerated_files`         | `7963`    |\n| `PHP_OPCACHE_VALIDATE_TIMESTAMPS`     | `opcache.validate_timestamps`           | `default` |\n| `PHP_OPCACHE_REVALIDATE_FREQ`         | `opcache.revalidate_freq`               | `default` |\n| `PHP_OPCACHE_INTERNED_STRINGS_BUFFER` | `opcache.interned_strings_buffer`       | `16`      |\n\n## PHP FPM variables\n\nYou can specify eg. `fpm.pool.pm.max_requests=1000` as dyanmic env variable which will sets `pm.max_requests = 1000` as fpm pool setting.\nThe prefix `fpm.pool` is for pool settings and `fpm.global` for global master process settings.\n\n| Environment variable            | Description                                                   |\n| ------------------------------- | ------------------------------------------------------------- |\n| `fpm.global.{setting-key}`      | Sets the `{setting-key}` as fpm global setting for the master |\n| `fpm.pool.{setting-key}`        | Sets the `{setting-key}` as fpm pool setting                  |\n| `FPM_PROCESS_MAX`               | `process.max`                                                 |\n| `FPM_PM_MAX_CHILDREN`           | `pm.max_children`                                             |\n| `FPM_PM_START_SERVERS`          | `pm.start_servers`                                            |\n| `FPM_PM_MIN_SPARE_SERVERS`      | `pm.min_spare_servers`                                        |\n| `FPM_PM_MAX_SPARE_SERVERS`      | `pm.max_spare_servers`                                        |\n| `FPM_PROCESS_IDLE_TIMEOUT`      | `pm.process_idle_timeout`                                     |\n| `FPM_MAX_REQUESTS`              | `pm.max_requests`                                             |\n| `FPM_REQUEST_TERMINATE_TIMEOUT` | `request_terminate_timeout`                                   |\n| `FPM_RLIMIT_FILES`              | `rlimit_files`                                                |\n| `FPM_RLIMIT_CORE`               | `rlimit_core`                                                 |\n\n## Composer\n\nDue to the incompatibilities between composer v1 and v2 we introduce a simple mechanism to switch between composer versions.\n\n| Environment variable | Description                         | Default |\n| -------------------- | ----------------------------------- | ------- |\n| `COMPOSER_VERSION`   | Specify the composer version to use | `2`     |\n\n## License\n\nMIT / BSD\n\n## Author Information\n\nThis Code was created in 2022 by [Asapdotid](https://github.com/asapdotid).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fasapdotid%2Fdcc-php-app-single","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fasapdotid%2Fdcc-php-app-single","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fasapdotid%2Fdcc-php-app-single/lists"}