This commit is contained in:
@@ -21,15 +21,19 @@ jobs:
|
|||||||
|
|
||||||
- name: 2. Sync Files to Running Container
|
- name: 2. Sync Files to Running Container
|
||||||
run: |
|
run: |
|
||||||
# B. 執行複製
|
# A. 執行複製
|
||||||
cp .env.example .env
|
cp .env.example .env
|
||||||
|
|
||||||
sed -i "s|^APP_KEY=.*|APP_KEY=${{ secrets.APP_KEY }}|g" .env
|
# B. 確保容器環境是最新的
|
||||||
|
# --wait 會確保容器真的跑起來了才執行下一步
|
||||||
docker compose up -d --build --force-recreate --wait
|
docker compose up -d --build --force-recreate --wait
|
||||||
# 這一步最關鍵!它把剛抓下來的新 Code 塞進去「正在跑」的容器
|
|
||||||
# 它不會刪掉你的 .env,因為它是用 tar 覆蓋進去
|
# C. 執行精簡化複製 (關鍵優化!)
|
||||||
tar -cf - . | docker exec -i koori-erp-laravel.test-1 tar -xf - -C /var/www/html
|
# 排除 .git, node_modules, vendor 這三大黑洞
|
||||||
|
tar --exclude='.git' \
|
||||||
|
--exclude='node_modules' \
|
||||||
|
--exclude='vendor' \
|
||||||
|
-cf - . | docker exec -i koori-erp-laravel.test-1 tar -xf - -C /var/www/html
|
||||||
|
|
||||||
|
|
||||||
- name: 3. Refresh Backend (Only if needed)
|
- name: 3. Refresh Backend (Only if needed)
|
||||||
|
|||||||
Reference in New Issue
Block a user