260304:1320 20260304:1200 update app to lcbp3 #5
All checks were successful
Build and Deploy / deploy (push) Successful in 50s

This commit is contained in:
admin
2026-03-04 13:20:01 +07:00
parent 247df788cb
commit 5099380ded
5 changed files with 10 additions and 12 deletions

View File

@@ -96,7 +96,7 @@ Use `/slash-command` to trigger these workflows. Always prefer spec-driven devel
## 🚫 Forbidden Actions
- DO NOT use SQL Triggers (Business logic must be in NestJS services).
- DO NOT use `.env` files for production configuration (Use Docker environment variables).
- DO NOT use `.env` files for production deployment — QNAP Container Station requires secrets directly in `docker-compose.yml` environment section.
- DO NOT run database migrations — modify the schema SQL file directly.
- DO NOT invent table names or columns — use ONLY what is defined in the schema SQL file.
- DO NOT generate code that violates OWASP Top 10 security practices.

View File

@@ -46,8 +46,6 @@ jobs:
echo "🔄 Updating Containers..."
# Sync compose file จาก repo → app directory
cp /share/np-dms/app/source/lcbp3/specs/04-Infrastructure-OPS/04-00-docker-compose/docker-compose-app.yml /share/np-dms/app/docker-compose-app.yml
# ⚠️ .env ต้องมีค่าจริงอยู่บน QNAP แล้ว (ไม่ sync จาก repo เพราะ repo มีแค่ template)
# ถ้ายังไม่มี: cp .env.example .env แล้วตั้งค่าจริง
cd /share/np-dms/app
# ⚠️ ลบ container เดิมที่อาจสร้างจาก Container Station
docker rm -f backend frontend 2>/dev/null || true

View File

@@ -68,7 +68,7 @@ You value **Data Integrity**, **Security**, and **Clean Architecture**.
## 🚫 Forbidden Actions
- DO NOT use SQL Triggers (Business logic must be in NestJS services).
- DO NOT use `.env` files for production configuration (Use Docker environment variables).
- DO NOT use `.env` files for production deployment — QNAP Container Station requires secrets directly in `docker-compose.yml` environment section.
- DO NOT run database migrations — modify the schema SQL file directly.
- DO NOT invent table names or columns — use ONLY what is defined in the schema SQL file.
- DO NOT generate code that violates OWASP Top 10 security practices.

View File

@@ -70,7 +70,7 @@ Adhere to all ADRs in `specs/06-Decision-Records/`:
## 🚫 Forbidden Actions
- DO NOT use SQL Triggers (Business logic must be in NestJS services).
- DO NOT use `.env` files for production configuration (Use Docker environment variables).
- DO NOT use `.env` files for production deployment — QNAP Container Station requires secrets directly in `docker-compose.yml` environment section.
- DO NOT run database migrations — modify the schema SQL file directly.
- DO NOT invent table names or columns — use ONLY what is defined in the schema SQL file.
- DO NOT generate code that violates OWASP Top 10 security practices.

View File

@@ -9,8 +9,8 @@
# - search (services)
# - npm (lcbp3-npm)
# ============================================================
# 🔒 SECURITY: ห้าม commit ค่า secrets จริงที่นี่
# ใช้ Environment Variables ใน Container Station UI
# 🔒 SECURITY: Secrets ใส่ตรงใน environment section เพราะ QNAP Container Station
# ไม่รองรับ .env file — Repo ต้องเป็น Private เท่านั้น
# ============================================================
name: lcbp3
@@ -56,18 +56,18 @@ services:
DB_PORT: '3306'
DB_DATABASE: 'lcbp3'
DB_USERNAME: 'center'
DB_PASSWORD: '${DB_PASSWORD}'
DB_PASSWORD: 'Center#2025'
# --- Redis ---
REDIS_HOST: 'cache'
REDIS_PORT: '6379'
REDIS_PASSWORD: '${REDIS_PASSWORD}'
REDIS_PASSWORD: 'Center2025'
# --- Elasticsearch ---
ELASTICSEARCH_HOST: 'search'
ELASTICSEARCH_PORT: '9200'
# --- JWT ---
JWT_SECRET: '${JWT_SECRET}'
JWT_SECRET: 'eebc122aa65adde8c76c6a0847d9649b2b67a06db1504693e6c912e51499b76e'
JWT_EXPIRATION: '8h'
JWT_REFRESH_SECRET: '${JWT_REFRESH_SECRET}'
JWT_REFRESH_SECRET: 'a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2'
# --- Numbering ---
NUMBERING_LOCK_TIMEOUT: '5000'
NUMBERING_RESERVATION_TTL: '300'
@@ -113,7 +113,7 @@ services:
HOSTNAME: '0.0.0.0'
PORT: '3000'
# --- NextAuth ---
AUTH_SECRET: '${AUTH_SECRET}'
AUTH_SECRET: 'eebc122aa65adde8c76c6a0847d9649b2b67a06db1504693e6c912e51499b76e'
AUTH_URL: 'https://lcbp3.np-dms.work'
networks:
- lcbp3