Aphex
Lightning fast, super slim and production hardened: Alpine, PHP, Nginx docker container.
Install / Use
/learn @ethical-jobs/AphexREADME
Alpine Linux, PHP, Nginx
A super fast, super slim, production hardened PHP 7.3/7.4 and Nginx docker image built on Alpine Linux.
Perfect for horizontally distributed PHP and Laravel applications run within a container cluster.
Stack
- Alpine Linux
- PHP 7.3/7.4 & PHP-FPM
- mysqli
- pdo, pdo_mysql + pdo_sqlite
- opcache
- pcntl
- bcmath
- exif
- mbstring
- gd
- xdebug-2.9 (Not loaded)
- NGINX 1.16 (FastCGI web-server)
- Composer 2 (PHP package manager)
hirak/prestissimowas previously globally installed, but is no longer required nor supported under Composer 2
- Supervisor Daemon (Process manager)
- Tooling
- git
- wget
- bash
Usage
This image should not be directly built, it a starting point for your own Dockerfile.
Your Dockerfile should ADD an Nginx configuration file at the very least.
Lightweight example Dockerfile of running a brand new Laravel application
docker build -f example/Dockerfile .
XDebug
XDebug is included with the image, but not enabled for the PHP runtime. Lazily loading the xdebug module through command-line can be done via
php -d zend_extension=xdebug ...
Logging Output
A docker container should have the command it runs output to stdout and stderr, so the container runner (e.g. docker-compose / Kubernetes) can see this output and forward it to a logging system.
PHP
PHP-FPM has workers that can emit to php://stdout and php://stderr. These are captured by PHP-FPM's master process and can be logged to a single error log file. However, there is no way to send these to two separate files.
Additionally, a further file symlink would be needed to forward this output to /dev/stdout. But, PHP-FPM does not run as a user with the privilege to create this symlink or write to the file. Only root can write to /dev/stdout.
Possible Solutions
- Have php workers write to a file in a known location, /var/www/storage/logs/stdout.log.
- A process running as root tails this file and forwards it to /dev/stdout
- Another process truncates this file occasionally to prevent it from filling up the file system
Related Skills
node-connect
344.4kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
prose
344.4kOpenProse VM skill pack. Activate on any `prose` command, .prose files, or OpenProse mentions; orchestrates multi-agent workflows.
frontend-design
99.2kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
344.4kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
