42 lines
853 B
Docker
42 lines
853 B
Docker
FROM node:24-alpine
|
|
|
|
WORKDIR /app
|
|
|
|
# 필요한 패키지 설치
|
|
RUN apk add --no-cache curl
|
|
|
|
# package.json 복사
|
|
COPY package*.json ./
|
|
|
|
# 의존성 설치
|
|
RUN npm install
|
|
|
|
# 소스 코드 복사
|
|
COPY . .
|
|
|
|
# 환경변수 설정 (Docker 환경용)
|
|
ENV NODE_ENV=production
|
|
ENV POSTGRES_HOST=192.168.11.46
|
|
ENV POSTGRES_PORT=5431
|
|
ENV POSTGRES_USER=genome
|
|
ENV POSTGRES_PASSWORD=genome1@3
|
|
ENV POSTGRES_DB=genome_db
|
|
ENV POSTGRES_SYNCHRONIZE=false
|
|
ENV POSTGRES_LOGGING=false
|
|
ENV REDIS_URL=redis://192.168.11.46:6379
|
|
ENV REDIS_HOST=192.168.11.46
|
|
ENV REDIS_PORT=6379
|
|
ENV JWT_SECRET=your-super-secret-jwt-key-change-this-in-production
|
|
ENV JWT_EXPIRES_IN=24h
|
|
ENV JWT_REFRESH_SECRET=your-refresh-token-secret
|
|
ENV JWT_REFRESH_EXPIRES_IN=7d
|
|
|
|
# NestJS 빌드
|
|
RUN npm run build
|
|
|
|
# 포트 노출
|
|
EXPOSE 4000
|
|
|
|
# 애플리케이션 실행
|
|
CMD ["npm", "run", "start:prod"]
|