- 添加项目必要的配置文件(例如 `.env.example`、`.gitignore` 等) - 配置 Docker 环境相关文件(如 `.dockerignore`) - 引入默认的 `composer.json` 依赖项和脚本配置 - 添加基础数据库迁移文件 - 配置 Laravel 默认的资源文件夹和初始内容
27 lines
740 B
Docker
27 lines
740 B
Docker
FROM dunglas/frankenphp:1-php8.3
|
|
|
|
WORKDIR /app
|
|
|
|
# System packages and PHP extensions required by Laravel/Octane
|
|
RUN apt-get update \
|
|
&& apt-get install -y --no-install-recommends \
|
|
git \
|
|
unzip \
|
|
libzip-dev \
|
|
libpq-dev \
|
|
zlib1g-dev \
|
|
&& docker-php-ext-install \
|
|
pcntl \
|
|
zip \
|
|
pdo_mysql \
|
|
pdo_pgsql \
|
|
&& pecl install redis \
|
|
&& docker-php-ext-enable redis \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Composer for dependency management
|
|
COPY --from=composer:2 /usr/bin/composer /usr/local/bin/composer
|
|
|
|
# Default runtime command uses Octane (overridden by docker-compose entrypoint)
|
|
CMD ["php", "artisan", "octane:start", "--server=frankenphp", "--host=0.0.0.0", "--port=8000"]
|