mirror of
https://github.com/henry4682/finance_app.git
synced 2026-07-16 00:10:00 +00:00
fix: change dockerfile
All checks were successful
Laravel-Oracle-Deploy / redeploy (push) Successful in 2m1s
All checks were successful
Laravel-Oracle-Deploy / redeploy (push) Successful in 2m1s
This commit is contained in:
20
Dockerfile
20
Dockerfile
@@ -1,6 +1,6 @@
|
|||||||
FROM php:8.2-fpm
|
FROM php:8.2-fpm
|
||||||
|
|
||||||
# 1. 確保安裝了必要的系統套件
|
# 1. 安裝系統必要的擴充套件(Laravel 需要 zip, unzip 等才能解壓套件)
|
||||||
RUN apt-get update && apt-get install -y \
|
RUN apt-get update && apt-get install -y \
|
||||||
git \
|
git \
|
||||||
curl \
|
curl \
|
||||||
@@ -8,19 +8,23 @@ RUN apt-get update && apt-get install -y \
|
|||||||
libonig-dev \
|
libonig-dev \
|
||||||
libxml2-dev \
|
libxml2-dev \
|
||||||
zip \
|
zip \
|
||||||
unzip
|
unzip \
|
||||||
|
&& docker-php-ext-install pdo_mysql mbstring exif pcntl bcmath gd
|
||||||
|
|
||||||
# 2. 設定容器內的工作目錄(通常習慣用 /var/www)
|
# 🎯 2. 從官方 Composer 鏡像中,直接把 composer 執行檔複製進來
|
||||||
|
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
|
||||||
|
|
||||||
|
# 3. 設定工作目錄
|
||||||
WORKDIR /var/www
|
WORKDIR /var/www
|
||||||
|
|
||||||
# 3. 把本機當前目錄下的「所有檔案」(包含 artisan、app、routes 等)全部複製進容器的 /var/www
|
# 4. 把專案檔案複製進去
|
||||||
COPY . /var/www
|
COPY . /var/www
|
||||||
|
|
||||||
# 4. 安裝 Composer 依賴(如果有的話,可以加上,沒有就維持你原本的)
|
# 🎯 5. 在容器內直接執行 composer install,把 vendor 長出來!
|
||||||
# COPY --from=composer:latest /usr/bin/composer /usr/bin/composer
|
# 加上 --no-dev 是因為生產環境不需要測試套件,速度會快非常多
|
||||||
# RUN composer install --no-interaction --optimize-autoloader --no-dev
|
RUN composer install --no-interaction --optimize-autoloader --no-dev
|
||||||
|
|
||||||
EXPOSE 9000
|
EXPOSE 9000
|
||||||
|
|
||||||
# 🎯 關鍵:在啟動前,用「絕對路徑」去執行 artisan,確保一定找得到它!
|
# 6. 啟動 Laravel HTTP 伺服器
|
||||||
CMD ["php", "/var/www/artisan", "serve", "--host=0.0.0.0", "--port=9000"]
|
CMD ["php", "/var/www/artisan", "serve", "--host=0.0.0.0", "--port=9000"]
|
||||||
Reference in New Issue
Block a user