2.8 KiB
2.8 KiB
배포 가이드
현재 프로젝트는 Nuxt 3 초기 스캐폴딩 상태다. Docker 설정은 초안이며 운영 DB 확정 후 NAS에서 검증한다.
빌드 유형
| 유형 | 명령어 | 용도 |
|---|---|---|
| 개발 | npm run dev |
로컬 테스트, 개발 서버 |
| 프로덕션 | npm run build |
NAS 배포, 운영 서버 |
로컬 개발
필수 조건
- Node.js 20+ 권장
- npm 9+
- 개발 DB
실행 단계
# 프로젝트 클론
git clone https://git.sori.studio/zenn/sori.studio.git
# 디렉토리 이동
cd sori.studio
# 의존성 설치
npm install
# 개발 환경 변수 설정
cp .env.example .env.development
# .env.development 파일에 개발 DB 연결 정보 입력
# 로컬 DB 컨테이너를 호스트에서 접근할 때는 127.0.0.1:43119 사용
# 개발 서버 실행 (127.0.0.1:43117)
npm run dev
확인 주소
- 개발 서버: http://127.0.0.1:43117
- 관리자: http://127.0.0.1:43117/admin
UGREEN NAS Docker 배포
Dockerfile과 docker-compose 설정은 아직 작성 전이다.
SSH 접속
ssh [NAS_IP]
프로젝트 설치
# 프로젝트 디렉토리로 이동
cd /volume1/docker/sori.studio
# 프로젝트 클론
git clone https://git.sori.studio/zenn/sori.studio.git
# 디렉토리 이동
cd sori.studio
# 운영 환경 변수 설정
cp .env.example .env.production
# .env.production 파일에 운영 DB 연결 정보와 APP_PORT=43118 입력
# Docker 내부 앱에서 PostgreSQL에 접근할 때는 sori-studio-db:5432 사용
# Docker 빌드 및 실행
docker compose --env-file .env.production up -d
프로덕션 빌드 (NAS에서)
# 프로덕션 빌드
npm run build
# 또는 Docker로 빌드
docker build -t sori.studio:latest .
docker run -d -p 3000:3000 sori.studio:latest
포트
- 로컬 개발: 43117
- NAS Docker 외부: 43118
- 컨테이너 내부: 3000
- PostgreSQL 외부: 43119
- HTTPS: 3001 (SSL 설정 시)
데이터베이스
- 로컬 개발:
.env.development의DATABASE_URL - NAS 운영:
.env.production의DATABASE_URL - 로컬 개발 예시:
postgres://sori_studio:비밀번호@127.0.0.1:43119/sori_studio - NAS Docker 예시:
postgres://sori_studio:비밀번호@sori-studio-db:5432/sori_studio - 개발 DB와 운영 DB는 반드시 별도 인스턴스 또는 별도 데이터베이스로 분리
- 운영 DB는 로컬 개발 서버에서 직접 연결하지 않음
- 관리 도구: CloudBeaver 등으로 추후 연결 가능하게 설계
- NAS Docker 배포 시 PostgreSQL 초기 스키마는
db/migrations/의 SQL로 생성
사용자 액션 필요 항목
- NAS SSH 접속 주소 확인.
- NAS 프로젝트 루트 경로 확정.
- 운영 DB 이름, 계정, 권한 확정.
- 도메인
sori.studio의 NAS 연결 방식 확정.