# 依存インストール用ビルドステージ FROM composer:2 AS build WORKDIR /app COPY composer.json ./ RUN composer install --no-dev --no-interaction --optimize-autoloader # 本番イメージ FROM php:8.2-cli-alpine WORKDIR /app # PHPサーバー用ポートを開放 EXPOSE 7860 # buildステージから vendor をコピー COPY --from=build /app /app # 必要に応じて yt-dlp インストール RUN apk add --no-cache curl \ && curl -L https://github.com/yt-dlp/yt-dlp/releases/latest/download/yt-dlp_linux -o /usr/local/bin/yt-dlp \ && chmod +x /usr/local/bin/yt-dlp \ && ln -s /usr/local/bin/yt-dlp /usr/local/bin/youtube-dl # アプリ本体をコピー COPY index.php ./ # 組み込みサーバーを起動 (0.0.0.0:7860でバインド) CMD ["php", "-S", "0.0.0.0:7860", "index.php"]