# 가볍고 안정적인 Node.js 18 Alpine 이미지 사용
FROM node:18-alpine

# GitHub 소스를 가져오기 위해 git 설치
RUN apk add --no-cache git

# 컨테이너 내 작업 디렉토리 설정
WORKDIR /app

# 공식 WebCG 저장소 복제 (최신 소스코드)
RUN git clone https://gitea.shworld.uk/shinsh/WebCG.git .

# Node.js 의존성 패키지 설치
RUN npm install

# 데이터 영구 저장을 위한 볼륨 포인트 선언
VOLUME ["/app/ASSETS", "/app/DATAROOT"]

# 기본 웹 서비스 포트 노출
EXPOSE 5656

# 서버 실행
CMD ["node", "server.js"]