CI/CD 준비: gitignore 정리, backend 멀티스테이지 빌드, Gitea Actions 배포 워크플로우

- .gitignore 추가: node_modules, dist, .env 파일을 추적에서 해제 (로컬 파일은 유지)
- .env.example 템플릿 추가 (실제 값은 서버 .env / Gitea Secrets로 관리)
- backend Dockerfile을 멀티스테이지로 전환: 이미지 빌드 내에서 npm ci + build.js 실행
- backend/frontend .dockerignore 추가
- .gitea/workflows/deploy.yml 추가: main push 시 배포 서버 러너가 compose build + up

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
2026-07-19 03:54:20 +09:00
parent 7f950339ae
commit 4aebfaf049
23230 changed files with 119 additions and 3199885 deletions
+39
View File
@@ -0,0 +1,39 @@
# ============================================================
# 환경 변수 템플릿
# 실제 값은 배포 서버의 .env 파일 또는 Gitea Actions Secret(ENV_FILE)에 보관합니다.
# 이 파일을 복사해서 .env 로 만들고 값을 채워 넣으세요.
# ============================================================
# MySQL
MYSQL_PORT=3306
DB_HOST=mysql
DB_USER=
DB_PASSWORD=
DB_NAME=report_db
# Admin Account
ADMIN_USER=
ADMIN_PASS=
# JWT Secrets
ACCESS_SECRET=
REFRESH_SECRET=
# Gemini API Key
JEMINI_KEY=
# n8n Configuration
N8N_PORT=5678
N8N_DB_USER=n8n
N8N_DB_PASSWORD=
N8N_DB_NAME=n8n_database
POSTGRES_USER=n8n
POSTGRES_PASSWORD=
POSTGRES_DB=n8n_database
# Ports
BACKEND_PORT=54530
FRONTEND_PORT=55110
# n8n Security
N8N_ENCRYPTION_KEY=