A lightweight container image for running webman applications:
- PHP 8.5.9 CLI on Alpine Linux
- S6 Overlay v3 process supervision (webman runs as a longrun service, graceful SIGTERM shutdown)
- Composer preinstalled; dependencies auto-installed on first start
- Extensions commonly needed by webman:
swoole,event,redis, and more
Your application is mounted at /app and started with php start.php start on port 8787.
docker run --rm -it -p 8787:8787 -v /home/www/webman:/app tinywan/docker-php-webmandocker run --rm -it -p 8787:8787 -v e:/dnmp/www/webman:/app tinywan/docker-php-webmanThe start command is controlled by the WEBMAN_CMD environment variable (default php start.php start):
docker run --rm -it -p 8787:8787 -e WEBMAN_CMD="php start.php start -d" -v /home/www/webman:/app tinywan/docker-php-webmanIf /app/vendor/autoload.php is missing, the entrypoint automatically runs
composer install --no-interaction --no-scripts --no-plugins before starting webman.
Images are published to Docker Hub (tinywan/docker-php-webman) and GHCR
(ghcr.io/tinywan/docker-php-webman) by CI on every v*.*.* release tag:
| Tag | Meaning |
|---|---|
latest |
Latest release |
<version> |
Release version, e.g. 1.0.0 (from the git tag) |
<php-version>-cli-alpine |
Tracked by PHP version, e.g. 8.5.9-cli-alpine |
Controlled by the EXTENSIONS list in extension/install.sh:
bcmath bz2 calendar event gd mysqli opcache pcntl pdo pdo_mysql redis sockets swoole xlswriter zip
Plus the extensions bundled with the official PHP image (curl, mbstring, openssl, sodium, iconv, ...). Verify with:
docker run --rm tinywan/docker-php-webman php -mdocker build -t tinywan/docker-php-webman:8.5.9-cli-alpine .