mirror of
https://github.com/trushildhokiya/allininx-2.git
synced 2025-03-15 13:28:41 +00:00
40 lines
841 B
Docker
40 lines
841 B
Docker
# Use the official Node.js image as the base image
|
|
FROM node:19-alpine
|
|
|
|
ARG NODE_ENV
|
|
|
|
ENV NODE_ENV=$NODE_ENV
|
|
|
|
# Needed for the wait-for-db script
|
|
RUN apk add --no-cache netcat-openbsd
|
|
|
|
# Set the working directory
|
|
WORKDIR /next
|
|
|
|
# Copy package.json and package-lock.json to the working directory
|
|
COPY package*.json ./
|
|
|
|
# Install dependencies
|
|
RUN npm ci
|
|
|
|
# Copy the wait-for-db.sh script
|
|
COPY wait-for-db.sh /usr/local/bin/wait-for-db.sh
|
|
RUN chmod +x /usr/local/bin/wait-for-db.sh
|
|
|
|
# Copy the rest of the application code
|
|
COPY . .
|
|
COPY entrypoint.sh /
|
|
|
|
# Ensure correct line endings after these files are edited by windows
|
|
RUN apk add --no-cache dos2unix netcat-openbsd \
|
|
&& dos2unix /entrypoint.sh
|
|
|
|
|
|
# Expose the port the app will run on
|
|
EXPOSE 3000
|
|
|
|
ENTRYPOINT ["sh", "/entrypoint.sh"]
|
|
|
|
# Start the application
|
|
CMD ["npm", "run", "dev"]
|