timmy ревизий этого фрагмента 14 hours ago. К ревизии
1 file changed, 36 insertions
Dockerfile(файл создан)
| @@ -0,0 +1,36 @@ | |||
| 1 | + | FROM php:8.2-apache | |
| 2 | + | ||
| 3 | + | # 1. 更新 apt-get 並安裝相依套件 | |
| 4 | + | # 將所有 apt-get 操作合併,並在最後清理,以減小 Image 體積 | |
| 5 | + | RUN apt-get update && apt-get install -y --no-install-recommends \ | |
| 6 | + | libfreetype6-dev \ | |
| 7 | + | libjpeg62-turbo-dev \ | |
| 8 | + | libjpeg-dev \ | |
| 9 | + | libpng-dev \ | |
| 10 | + | libgmp-dev \ | |
| 11 | + | libxml2-dev \ | |
| 12 | + | libcurl4-gnutls-dev \ | |
| 13 | + | libmariadb-dev-compat \ | |
| 14 | + | libmariadb-dev \ | |
| 15 | + | && rm -rf /var/lib/apt/lists/* | |
| 16 | + | ||
| 17 | + | # 2. 配置並安裝 PHP 擴充功能 | |
| 18 | + | # 將多個 docker-php-ext-install 合併執行 | |
| 19 | + | RUN docker-php-ext-configure gd --with-freetype --with-jpeg \ | |
| 20 | + | && docker-php-ext-configure gmp \ | |
| 21 | + | && docker-php-ext-install -j$(nproc) gd exif gmp mysqli pdo_mysql | |
| 22 | + | ||
| 23 | + | # 3. 安裝 XML-RPC 擴展 (透過 PECL) | |
| 24 | + | RUN pecl install channel://pecl.php.net/xmlrpc-1.0.0RC3 \ | |
| 25 | + | && docker-php-ext-enable xmlrpc | |
| 26 | + | ||
| 27 | + | # 4. 複製 php.ini 設定檔 | |
| 28 | + | #修正:官方 Image 的設定檔路徑應為 /usr/local/etc/php/php.ini | |
| 29 | + | # 注意:請確保你的本地 php.ini 檔案中,沒有指定錯誤的 extension_dir | |
| 30 | + | COPY php.ini /usr/local/etc/php/php.ini | |
| 31 | + | ||
| 32 | + | # 5. 設定工作目錄 | |
| 33 | + | WORKDIR /var/www/html | |
| 34 | + | ||
| 35 | + | # 6. 啟用 Apache 的 rewrite 模組 (通常 Web 專案都需要) | |
| 36 | + | RUN a2enmod rewrite | |
Новее
Позже