Zuletzt aktiv 15 hours ago

Dockerfile Originalformat
1FROM php:8.2-apache
2
3# 1. 更新 apt-get 並安裝相依套件
4# 將所有 apt-get 操作合併,並在最後清理,以減小 Image 體積
5RUN 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 合併執行
19RUN 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)
24RUN 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
30COPY php.ini /usr/local/etc/php/php.ini
31
32# 5. 設定工作目錄
33WORKDIR /var/www/html
34
35# 6. 啟用 Apache 的 rewrite 模組 (通常 Web 專案都需要)
36RUN a2enmod rewrite