Sign inSign up

easydigital/frankenphp

By easydigital

•Updated 27 days ago

Production-ready FrankenPHP: custom Caddy build, 56 PHP extensions, Composer, WP-CLI, Node.js

Image
Languages & frameworks
Web servers
0

3.4K

easydigital/frankenphp repository overview

⁠FrankenPHP — Enterprise PHP App Server

Published by easydigital⁠ · GitHub⁠

Docker Pulls Image Size GitHub Stars License

Enterprise-ready FrankenPHP images with a custom Caddy build, 56 PHP extensions, and production tooling. Same image as morsalin1342/frankenphp — published here for organizational use.

⁠✨ Why This Image?

FeatureOfficial imageThis image
Caddy modulesMinimal✅ 16 — WAF, rate limiting, Brotli, Souin, 6 DNS
Web application firewall❌✅ OWASP Coraza, Core Rule Set compiled in
PHP extensionsFew built in✅ 56 pre-installed
Composer / WP-CLI❌✅ Both
Node.js❌✅ v24, configurable
Supervisor + Cron❌✅
Debian releasesOne✅ bookworm and trixie

⁠Why Use the easydigital Registry?

  • Namespace isolation — keep team pulls under the organization account
  • Same image digest — bit-for-bit identical to morsalin1342/frankenphp
  • CI/CD friendly — predictable tags for automated pipelines

⁠Deployment Example

# production.yml
services:
  app:
    image: easydigital/frankenphp:8.4-bookworm
    restart: always
    ports:
      - "80:80"
      - "443:443"
      - "443:443/udp"
    volumes:
      - ./public:/app
      - ./Caddyfile:/etc/caddy/Caddyfile
      - app_data:/data
    environment:
      SERVER_NAME: example.com

volumes:
  app_data:

⁠Caddyfile with HTTPS

example.com {
    root * /app/public
    encode zstd gzip
    php_server
    file_server
    header Strict-Transport-Security "max-age=63072000"
}

⁠Available Tags

8.5, 8.5-bookworm, 8.5-trixie, 8.4, 8.4-bookworm, 8.4-trixie, 8.3, 8.3-bookworm, 8.3-trixie, 8.2, 8.2-bookworm, 8.2-trixie, latest → 8.5

Unsuffixed tags are bookworm; append -trixie for Debian 13.

⁠❓ FAQ

Q: Can I add extensions? A: Yes — RUN install-php-extensions <name> in a layer on top; the installer is already in the image.

Q: How do I run queue workers? A: Supervisor is installed. Mount your config into /etc/supervisor/conf.d/.

Q: bookworm or trixie? A: Unsuffixed tags are bookworm. Append -trixie for Debian 13.


Image / ToolDescription
easydigital/caddy⁠Standalone Caddy with WAF, rate limiting & caching (org)
easydigital/php⁠Traditional PHP-FPM & CLI images (org)
easydigital/nginx⁠nginx with ModSecurity 3, Brotli, zstd & GeoIP2 (org)
morsalin1342/frankenphp⁠Personal account mirror
caddy-souin-cache-manager⁠Manage this image's Souin cache from WP Admin

⭐ If this image helps you, consider giving it a star on GitHub⁠!

Tag summary

Content type

Image

Digest

sha256:4a5e5ae90…

Size

535.9 MB

Last updated

27 days ago

docker pull easydigital/frankenphp