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