From 9553f9b921013adfcb3015d7bfb120e80c84b57d Mon Sep 17 00:00:00 2001 From: Remi PLANEL <rplanel@pasteur.fr> Date: Thu, 16 Feb 2023 11:17:37 +0100 Subject: [PATCH] Add dockerfile and docker compose --- .dockerignore | 4 ++++ Dockerfile | 34 ++++++++++++++++++++++++++++++++++ docker-compose.yml | 15 +++++++++++++++ 3 files changed, 53 insertions(+) create mode 100644 .dockerignore create mode 100644 Dockerfile create mode 100644 docker-compose.yml diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 00000000..65dea298 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,4 @@ +**/node_modules +Dockerfile +.gitlab-ci.yaml +**/.nuxt \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..fcb53f47 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,34 @@ +### Stage Install ### +FROM node:19.5-bullseye-slim as install + +RUN mkdir /usr/src/app +WORKDIR /usr/src/app +ENV PATH /usr/src/app/node_modules/.bin:$PATH +COPY package*.json ./ + +RUN npm install + + +### STAGE: Dev +FROM node:19.5-bullseye-slim as dev + +WORKDIR /usr/src/app +COPY --from=install /usr/src/app ./ +COPY . /usr/src/app +EXPOSE 3000 24678 4000 +CMD ["npm", "run", "dev"] + + +### STAGE: Build ### +FROM node:19.5-bullseye-slim as build + +WORKDIR /usr/src/app +COPY --from=install /usr/src/app ./ +COPY . /usr/src/app +RUN npm run generate + +### STAGE: NGINX ### +FROM nginx:stable-alpine +COPY --from=build /usr/src/app/dist /usr/share/nginx/html +EXPOSE 80 +CMD ["nginx", "-g", "daemon off;"] \ No newline at end of file diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 00000000..addf8ef5 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,15 @@ +version: "3.9" +services: + nuxt: + build: + context: . + target: dev + container_name: docus_dev + volumes: + - .:/usr/src/app + - /usr/src/app/node_modules + - /usr/src/app/.nuxt + ports: + - "3000:3000" + - "24678:24678" + - "4000:4000" -- GitLab