FROM php:8.2-apache # 1. 更新 apt-get 並安裝相依套件 # 將所有 apt-get 操作合併,並在最後清理,以減小 Image 體積 RUN apt-get update && apt-get install -y --no-install-recommends \ libfreetype6-dev \ libjpeg62-turbo-dev \ libjpeg-dev \ libpng-dev \ libgmp-dev \ libxml2-dev \ libcurl4-gnutls-dev \ libmariadb-dev-compat \ libmariadb-dev \ && rm -rf /var/lib/apt/lists/* # 2. 配置並安裝 PHP 擴充功能 # 將多個 docker-php-ext-install 合併執行 RUN docker-php-ext-configure gd --with-freetype --with-jpeg \ && docker-php-ext-configure gmp \ && docker-php-ext-install -j$(nproc) gd exif gmp mysqli pdo_mysql # 3. 安裝 XML-RPC 擴展 (透過 PECL) RUN pecl install channel://pecl.php.net/xmlrpc-1.0.0RC3 \ && docker-php-ext-enable xmlrpc # 4. 複製 php.ini 設定檔 #修正:官方 Image 的設定檔路徑應為 /usr/local/etc/php/php.ini # 注意:請確保你的本地 php.ini 檔案中,沒有指定錯誤的 extension_dir COPY php.ini /usr/local/etc/php/php.ini # 5. 設定工作目錄 WORKDIR /var/www/html # 6. 啟用 Apache 的 rewrite 模組 (通常 Web 專案都需要) RUN a2enmod rewrite