PHP S2i Images Alpine / RockyLinux / AlmaLinux / CentOS
NOTE
Attention: CentOS images will be deprecated on June 30, 2024 (EOL CentOS 7)
https://github.com/openshift/source-to-image
- Non-root
- Okd Ready!
- Kubernetes Ready!
- S2i build images
- Composer and
- Artisan Migrations
- Composer Nexus private repository
- Composer Version 2.3.9
- Php-fpm + Apache Images
- Php-fpm + Nginx Images
- Nginx Prometheus metrics
- Fpm Prometheus metrics
Environment |
Details |
TIMEZONE |
Set Timezone (America/Montevideo, America/El_salvador) |
WAITFOR_HOST |
set name host |
WAITFOR_PORT |
set port for WAITFOR_HOST |
MIGRATIONS |
Enable artisan migrations. 1/0 |
ARTISAN_COMMAND_OVERRIDE |
Override artisan command execute when migration is enabled |
PHP_MEMORY_LIMIT |
Set memory limit in PHP (Example: 512M) - Default value -1 (no limit) |
FPM_MAX_CHILDREN |
Set max concurrent clients fpm (Example: 250) - Default value 50 |
RUN_USER_ID |
Start cointainer with specific userid - Only in fpm images |
FPM_ENABLE_PROMETHEUS |
Enable FPM Prometheus metrics Values: 0 (Disable) - 1 (Enable) |
NGINX_ENABLE_PROMETHEUS |
Enable NGINX Prometheus metrics Values: 0 (Disable) - 1 (Enable) |
DISABLE_AUTODETECT_DOCROOT_FOLDER |
Disable autodetect and set Docroot folder - 1 (Disable) |
Environment |
Details |
MAX_REQUEST_WORKER |
Set max concurrent clients in Apache (Example: 500) - Default value 250 |
SERVER_LIMIT |
Set number server limit in Apache (Example: 20) - Default value 16 |
Environment |
Details |
NGINX_WORKER_CONNECTION |
Set max concurrent clients in Nginx (Example: 500) - Default value 1024 |
NGINX_WORKER_PROCESSES |
Set number process in Nginx (Example: 20) - Default value 1 |
Environment |
Details |
NEXUS_COMPOSER_REPO |
Url private composer repository |
NEXUS_COMPOSER_REPO_ENABLE_TLS |
Enable certificate tls validation for NEXUS_COMPOSER_REPO |
COMPOSER_VERSION_USE |
Set composer version used in build. Example 2.2.0 |
EXTRA_COMPOSER_COMMAND |
Run extra composer command after install dependencies process |
COMPOSER_AUTOLOAD_OPTMIZATION |
Run composer "composer install --optimize-autoloader --no-dev -vvv --no-scripts" in build process. 1(Enable), 0(Disable) - Default 0 |
COMPOSER_VALIDATE_LOCK |
Enable validation composer.lock file and auto composer update - Values: 1(Enable), 0(Disable) - Default 0 |
OVERRIDE_COMPOSER_COMMAND |
Override default composer command execute in build process. Default command: "composer install -vvv --no-scripts" |
service |
port |
Apache images |
8080 |
Nginx images |
8080 |
Fpm prometheus metrics |
9253 |
Nginx prometheus metrics |
9113 |
Example build php80 fpm Nginx Alpine
docker build -t s2i-php:80-fpm-nginx -f php80-fpm/Dockerfile.nginx.alpine .
Php application image use s2i
s2i build https://github.com/my_phpapp.git s2i-php:71 myphp_app:latest --incremental
docker run -p 8080:8080 myphp_app:latest
https://github.com/openshift/source-to-image
Martin vilche