24 lines
510 B
Docker
24 lines
510 B
Docker
|
|
# Use node image
|
||
|
|
FROM node:18-alpine
|
||
|
|
|
||
|
|
# Set working directory in the container to /app
|
||
|
|
WORKDIR /app
|
||
|
|
|
||
|
|
# Copy only the package.json and package-lock.json first for caching
|
||
|
|
COPY package.json package-lock.json ./
|
||
|
|
|
||
|
|
# Install dependencies
|
||
|
|
RUN npm install --production
|
||
|
|
|
||
|
|
# Copy the entire project (core and backend code)
|
||
|
|
COPY . .
|
||
|
|
|
||
|
|
# Set the working directory to the backend folder
|
||
|
|
WORKDIR /app/server
|
||
|
|
|
||
|
|
# Expose the port the backend listens on
|
||
|
|
EXPOSE 8080
|
||
|
|
|
||
|
|
# Start the backend server
|
||
|
|
CMD ["npm", "run", "start:server"]
|