サンプル

実際のアプリを、エンドツーエンドで検証済み

OxPHP 上で動く Laravel から WordPress まで。各レシピは自己完結型の Docker Compose プロジェクトです。Dockerfile、compose ファイル、インストールコマンド、そして nginx + PHP-FPM 向けに書かれたドキュメントではカバーされない細部までを含みます。

Laravel

フレームワークモードの代表的なアプリケーション。

PHP
8.5
ルーティングモード
フレームワーク
サービス
MySQL
インストール
composer create-project
environment · docker-compose.yml
ENTRY_FILE=index.php
INTERNAL_ADDR=0.0.0.0:9090
ACCESS_LOG=all
注記

ENTRY_FILE=index.php を指定するとフレームワークモードになります。public/ がドキュメントルートとなるため、.env、app/、vendor/ に HTTP 経由でアクセスされることはありません。

コンテナの環境変数が .env より優先されます。Laravel の dotenv ローダーは実際の環境変数を上書きしないため、Compose で設定した DB_HOST や APP_ENV が有効になります。

開発用イメージはリクエストごとに OPcache を再検証するため、バインドマウントした src/ への変更は即座に反映されます。

Built on the published image

Every Dockerfile copies the oxphp binary, liboxphp_bridge.so and the SAPI extension from ghcr.io/oxphp/oxphp. The PHP ABI must match: compile your app's extensions against the same php:<X.Y>-zts-alpine.

Routing mode follows the app's shape

One front controller under public/ → framework mode. Several physical entry points → traditional mode. One decision replaces the whole nginx rewrite file.

Security defaults, no config

Dot-path blocking 404s .env and .git/ everywhere; PHP_DENY_PATHS hardens upload dirs in traditional mode; SYMLINK_ALLOW_PATHS allows only deliberate symlink escapes.

Install through the same container

The dev image carries the PHP CLI and Composer: artisan, drush, wp and bin/magento all run via docker compose exec — no separate toolchain.

お使いのスタックが一覧にありませんか?

フロントコントローラーを持つアプリはどれもフレームワークモードで動作します。Laravel のレシピから始めて、3 つの変数を調整してください。