From d663f108aef33bfc840c20da0c4bcb876bd6c759 Mon Sep 17 00:00:00 2001 From: David Beniamine <david.beniamine@tetras-libre.fr> Date: Wed, 1 Mar 2023 00:55:53 +0100 Subject: [PATCH] Cleaner build --- Dockerfile | 13 ++++++++----- Dockerfile.devserver | 12 ------------ dev.yml | 11 ++++++++++- docker-compose.yml | 18 ++++-------------- 4 files changed, 22 insertions(+), 32 deletions(-) delete mode 100644 Dockerfile.devserver diff --git a/Dockerfile b/Dockerfile index ba72fd7..446fe58 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,10 +1,13 @@ -FROM debian:stable as builder -RUN apt-get update && apt-get install -y npm git - +FROM node:14 as mirador +RUN apt-get update && apt-get install -y git COPY . /opt +RUN chown -R node:node /opt +EXPOSE 9000 WORKDIR /opt -RUN npm ci +USER node +RUN npm install RUN npm run build +CMD npm run serve FROM caddy:latest as httpd -COPY --from=builder /opt/public /srv +COPY --from=mirador /opt/public /srv diff --git a/Dockerfile.devserver b/Dockerfile.devserver deleted file mode 100644 index a1e6eb7..0000000 --- a/Dockerfile.devserver +++ /dev/null @@ -1,12 +0,0 @@ -#FROM debian:stable-slim -FROM node:14 as mirador -RUN apt-get update && apt-get install -y git -#RUN useradd --home-dir /opt node -RUN chown node:node /opt -EXPOSE 9000 -WORKDIR /opt -USER node -# TODO other command in production -CMD npm run serve - -FROM caddy:latest as httpd diff --git a/dev.yml b/dev.yml index 2768c8a..b339f24 100644 --- a/dev.yml +++ b/dev.yml @@ -1,10 +1,19 @@ version: "3.3" services: - mirador: + devserver: + build: + context: . + target: mirador + restart: $DEV_RESTART ports: - $DEV_PORT:9000 environment: + - CORS_ALLOWED_HOSTS - WEBPACK_MODE=development + - HTTP_FOLDER + - DEV_PORT + volumes: + - ./:/opt httpd: ports: diff --git a/docker-compose.yml b/docker-compose.yml index 72fcf4c..34cfdc9 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,26 +1,16 @@ version: "3.3" services: - mirador: + httpd: build: context: . - dockerfile: Dockerfile.devserver - target: mirador - restart: $RESTART + dockerfile: Dockerfile + target: httpd environment: - CORS_ALLOWED_HOSTS - - HTTP_FOLDER - - DEV_PORT + - WEBPACK_MODE=production volumes: - $HTTP_FOLDER:/srv/data - ./Caddyfile:/etc/caddy/Caddyfile - - ./:/opt - - - httpd: - build: - context: . - dockerfile: Dockerfile.devserver - target: httpd annotot: image: tetraslibre/annotot-app -- GitLab