shared/middleware/pagePermission.js를 ../../../shared/로 참조하면 Docker 컨테이너 내부에서 /usr/src/shared/를 찾아 MODULE_NOT_FOUND 발생. ln -s /usr/src/app/shared /usr/src/shared 심링크로 해결. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
22 lines
510 B
Docker
22 lines
510 B
Docker
FROM node:18-alpine
|
|
WORKDIR /usr/src/app
|
|
|
|
# shared 모듈 복사
|
|
COPY shared/ ./shared/
|
|
|
|
COPY tksupport/api/package*.json ./
|
|
RUN npm install --omit=dev
|
|
|
|
COPY tksupport/api/ ./
|
|
|
|
RUN ln -s /usr/src/app/shared /usr/src/shared
|
|
RUN chown -R node:node /usr/src/app
|
|
USER node
|
|
|
|
EXPOSE 3000
|
|
|
|
HEALTHCHECK --interval=30s --timeout=3s --start-period=20s --retries=3 \
|
|
CMD node -e "require('http').get('http://localhost:3000/health', (res) => { process.exit(res.statusCode === 200 ? 0 : 1); })"
|
|
|
|
CMD ["node", "index.js"]
|