diff --git a/Dockerfile b/Dockerfile index ba72fd78e724ed27ea8bf4a58160659e30760b66..446fe58e99740e8cf54845205c29c39427c29406 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 a1e6eb7f597ac04db632d499fb2d4b140bcb7408..0000000000000000000000000000000000000000 --- 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 2768c8a13062e2576fd7a4804f8e8dc68bebd103..b339f247909202b495fe5aea9593c5e73e8d483c 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 72fcf4c84cd148e109b967102ae2755d89523c73..34cfdc9b92364521df0b77e42b25645e358e7bac 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