a2707d658e
Deploy momo-erp / deploy (push) Successful in 53s
호스트 바인드 마운트는 docker compose 가 root 소유로 자동 생성해 컨테이너 nextjs(uid 1001) 가 mkdir 불가. named volume(momo_data_storage) 은 Dockerfile 의 chown nextjs:nodejs 를 그대로 복제하여 권한 문제 사라짐. deploy.sh 의 host-side mkdir/chmod 도 더 이상 불필요하므로 제거.
24 lines
833 B
Bash
24 lines
833 B
Bash
#!/bin/sh
|
|
# 운영 서버에서 실행되는 배포 스크립트
|
|
# webhook 이 이걸 spawn 함. 또는 cron/수동 실행 가능
|
|
# 호스트에 미리 배치: cp scripts/deploy.sh /deploy/deploy.sh && chmod +x
|
|
|
|
set -e
|
|
cd /deploy/source 2>/dev/null || cd "$HOME/momo-erp/source"
|
|
|
|
echo "[$(date)] git fetch + reset --hard origin/main"
|
|
git fetch origin
|
|
git reset --hard origin/main
|
|
|
|
# 업로드 저장은 named volume(momo_data_storage)으로 이전됨 — 호스트 디렉토리 prep 불필요
|
|
echo "[$(date)] docker compose up --build"
|
|
docker compose -f docker-compose.prod.yml up -d --build
|
|
|
|
echo "[$(date)] migrate:momo (idempotent)"
|
|
docker compose -f docker-compose.prod.yml exec -T momo-erp npm run migrate:momo || true
|
|
|
|
echo "[$(date)] docker ps"
|
|
docker compose -f docker-compose.prod.yml ps
|
|
|
|
echo "[$(date)] ✔ 배포 완료"
|