Files
turn-tracker/Dockerfile
AtHeartEngineer da0e03e287 init
2025-07-21 23:02:42 -04:00

38 lines
925 B
Docker

# Backend
FROM node:18-alpine AS backend
WORKDIR /usr/src/app/backend
COPY backend/package*.json ./
RUN npm install
RUN npm install typescript
COPY backend/ ./
RUN npm run build
# Frontend
FROM node:18-alpine AS frontend
WORKDIR /usr/src/app/frontend
COPY frontend/package*.json ./
RUN npm install
COPY frontend/ ./
RUN npm run build
# Final image
FROM node:18-alpine
WORKDIR /usr/src/app
# Create data directory for database persistence
RUN mkdir -p /data
# Set environment variable for data directory
ENV DATA_DIR=/data
COPY --from=backend /usr/src/app/backend/dist ./backend/dist
COPY --from=backend /usr/src/app/backend/package.json ./backend/package.json
COPY --from=backend /usr/src/app/backend/node_modules ./backend/node_modules
COPY --from=frontend /usr/src/app/frontend/build ./frontend/build
# Create volume mount point for persistent data
VOLUME ["/data"]
EXPOSE 3001
CMD ["node", "backend/dist/index.js"]