2.0 KiB
2.0 KiB
Synology NAS 배포 가이드 (라이선스 관리 시스템)
이 문서는 smart_ims-license-manager를 Synology NAS 환경에 배포하고 운영하기 위한 절차를 설명합니다.
사전 준비 사항
- Synology NAS 설정:
SSH서비스 활성화 (제어판 > 터미널 및 SNMP)Node.js패키지 설치 (패키지 센터)MariaDB 10패키지 설치 및 사용자/DB 생성 (smart_ims_license_db)Git Server패키지 설치 (또는 SSH를 통한git명령 사용)
주요 변경 사항 (서버 최적화)
Synology NAS 환경에서 통합 운영을 위해 Express 서버가 빌드된 클라이언트(React)를 직접 서빙하도록 수정되어 있습니다.
express.static을 사용하여../client/dist폴더의 정적 파일을 서빙합니다.- SPA(Single Page Application)를 위해 모든 경로를
index.html로 폴백(fallback) 시킵니다.
배포 단계 (설치 절차)
1. 소스 코드 배포
NAS에 SSH로 접속하여 프로젝트를 복제합니다.
git clone https://gitea.qideun.com/SOKUREE/smart_ims_license.git
cd smart_ims_license
2. 클라이언트 빌드
로컬 혹은 NAS에서 클라이언트를 빌드하여 dist 폴더를 생성합니다.
cd client
npm install
npm run build
3. 서버 환경 설정
server/.env 파일을 NAS 운영 환경에 맞게 수정합니다.
DB_HOST,DB_USER,DB_PASSWORD,DB_NAME설정- 포트 번호 확인 (기본
3006)
4. 의존성 설치 및 실행
cd ../server
npm install
# 테스트 실행
node server.js
5. PM2를 이용한 무중단 운영
서버가 백그라운드에서 계속 실행되도록 pm2를 사용합니다.
sudo npm install -g pm2
pm2 start server.js --name "license-manager"
pm2 save
pm2 startup
확인 사항
- Synology 역방향 프록시(Reverse Proxy)를 사용하여 도메인 또는 특정 포트를 연결합니다.
- 방화벽 설정에서 해당 포트(3006)가 열려 있는지 확인합니다.