- 일별 익명 방문자 해시·사이트/게시물 통계(030 마이그레이션) - POST /api/analytics/pageview, 관리자 analytics API, 클라이언트 트래커 - 관리자 대시보드 통계 카드·인기 게시물 Top 5 - 스플래시: SITE_BRAND_LOGO_TEXT localStorage 제거
36 lines
1.1 KiB
Plaintext
36 lines
1.1 KiB
Plaintext
# Database
|
|
DATABASE_URL=postgres://sori_studio:replace-with-random-password@sori-studio-db:5432/sori_studio
|
|
DATABASE_NAME=sori_studio
|
|
POSTGRES_DB=sori_studio
|
|
POSTGRES_USER=sori_studio
|
|
POSTGRES_PASSWORD=replace-with-random-password
|
|
DB_PORT=43119
|
|
|
|
# Auth
|
|
ADMIN_EMAIL=admin@example.com
|
|
ADMIN_PASSWORD=replace-with-random-password
|
|
MEMBER_SESSION_SECRET=replace-with-random-password
|
|
# ANALYTICS_HASH_SECRET= ← 선택. 일별 방문자 해시용 비밀. 비우면 MEMBER_SESSION_SECRET을 대신 사용.
|
|
|
|
# Upload
|
|
UPLOAD_DIR=/uploads
|
|
MAX_FILE_SIZE=10485760
|
|
AVATAR_MIN_WIDTH=96
|
|
AVATAR_MIN_HEIGHT=96
|
|
AVATAR_MAX_WIDTH=512
|
|
AVATAR_MAX_HEIGHT=512
|
|
AVATAR_WEBP_QUALITY=82
|
|
|
|
# Site
|
|
NUXT_PUBLIC_SITE_URL=https://sori.studio
|
|
NUXT_PUBLIC_SITE_TITLE=sori.studio
|
|
|
|
# Transactional email (Resend, optional — 회원가입 OTP·비밀번호 찾기)
|
|
# RESEND_API_KEY=
|
|
# RESEND_FROM_EMAIL=noreply@yourdomain.com
|
|
# EMAIL_OTP_PEPPER= ← 선택. OTP를 DB에 해시해 저장할 때 섞는 서버 전용 비밀(긴 난문자열 권장, 예: openssl rand -hex 32). 비우면 MEMBER_SESSION_SECRET을 대신 사용.
|
|
|
|
# Server
|
|
APP_PORT=43118
|
|
DOCKER_SUBNET=10.250.50.0/24
|