Introduction
Running Laravel on FrankenPHP is fast — but the setup can get fiddly.
Frankenstack gives you a single, Laravel-ready Docker image that supports:
- 🧱 Classic mode (FPM-style): requests are handled in isolation, with no memory shared between them
- ⚡️ Worker mode (Laravel Octane): keeps the app running between requests for maximum throughput
“Batteries included” with sensible defaults, configurable via environment variables.
Included Tools
Section titled “Included Tools”- SQLite 3: Available for local database development and testing
- MySQL 8.4 Client: For some artisan commands like
dbandschema:dump(any MySQL Server ≥ 5.7) - PostgreSQL 18 Client: For some artisan commands like
dbandschema:dump(any Postgres ≥ 10) - SSH Client: For some SSH-based Git operations in Composer/NPM (if you can’t use tokens)
- Composer 2: Pre-installed for PHP dependency management
- Node.js, NPM: Two latest LTS versions (22 and 24) are included, with runtime switching via the
NODE_VERSIONenvironment variable. Yarn and pnpm are available via Corepack up to Node.js 24.
Included PHP Extensions
Section titled “Included PHP Extensions”Installed extensions:
bcmath,bz2,core,ctype,curl,date,dom,exif,ffi,fileinfo,filter,ftp,gd,gmp,hash,iconv,igbinary,imagick,intl,json,ldap,libxml,lz4,mbstring,memcached,mongodb,mysqlnd,opcache,openssl,pcntl,pcov,pcre,pdo,pdo_mysql,pdo_pgsql,pdo_sqlite,phar,posix,random,readline,redis,reflection,session,simplexml,sockets,sodium,spl,sqlite3,standard,tokenizer,uv,xdebug,xml,xmlreader,xmlwriter,zip,zlib
Some of the extensions are disabled by default, but can be enabled via env (see Opt-in PHP Extensions):
bz2,ffi,ftp,gd,imagick,intl,ldap,memcached,mongodb,sockets,uv,xdebug