You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

42 lines
1020 B

FROM node:20-slim as builder
WORKDIR /home/node/app
COPY . .
RUN npm install
RUN npm run build
##################################################################################
FROM node:20-slim
WORKDIR /home/node/app
RUN mkdir -p /opt/database
RUN mkdir -p /opt/schema
RUN mkdir -p /opt/logs
COPY --from=builder /home/node/app/package.json package.json
COPY --from=builder /home/node/app/package-lock.json package-lock.json
COPY --from=builder /home/node/app/database database
COPY --from=builder /home/node/app/.sequelizerc .sequelizerc
COPY --from=builder /home/node/app/dist/server.min.cjs server.min.cjs
RUN npm install --production
RUN rm package.json
RUN rm package-lock.json
RUN npm install -g sequelize-cli
RUN NODE_ENV=production sequelize db:migrate
RUN NODE_ENV=production sequelize db:seed:all
RUN mv /opt/database/suiviLootWow.db /opt/schema/suiviLootWow.db
COPY ./docker-entrypoint.sh /docker-entrypoint.sh
RUN chmod +x /docker-entrypoint.sh
EXPOSE 3201
ENTRYPOINT "/docker-entrypoint.sh"