From ab57acdcd155f2ca6514a18730dd36e4eea47ab3 Mon Sep 17 00:00:00 2001 From: batmanisko Date: Wed, 28 Jun 2023 19:50:54 +0200 Subject: [PATCH] pridani portu do dockerfile + traefik example --- README.md | 5 ++++- client/Dockerfile | 2 +- compose-traefik.yml | 51 +++++++++++++++++++++++++++++++++++++++++++++ server/Dockerfile | 2 ++ 4 files changed, 58 insertions(+), 2 deletions(-) create mode 100644 compose-traefik.yml diff --git a/README.md b/README.md index 7b1bae8..75deb93 100644 --- a/README.md +++ b/README.md @@ -26,9 +26,12 @@ Aplikace sestává ze dvou (tří) modulů. - [Docker](https://www.docker.com) - [Docker Compose](https://docs.docker.com/compose) -### Spuštění +### Spuštění s nginx - `docker compose up --build -d` +### Spuštení s traefik +- `docker compose -f compose-traefik.yml up --build -d` + ## TODO - [x] Umožnit smazání aktuální volby "popelnicí", místo nutnosti vybrat prázdnou položku v selectu - [x] Přívětivější možnost odhlašování diff --git a/client/Dockerfile b/client/Dockerfile index 2adda06..9f1cf0b 100644 --- a/client/Dockerfile +++ b/client/Dockerfile @@ -18,6 +18,6 @@ ENV NODE_ENV production WORKDIR /app COPY --from=builder /build . - +EXPOSE 3000 RUN yarn global add serve && yarn CMD ["serve", "-s", "."] \ No newline at end of file diff --git a/compose-traefik.yml b/compose-traefik.yml new file mode 100644 index 0000000..37debf2 --- /dev/null +++ b/compose-traefik.yml @@ -0,0 +1,51 @@ +version: "3" + +networks: + proxy: + name: traefik_proxy + +services: + traefik: + image: "traefik:latest" + container_name: "traefik" + command: +# - "--log.level=DEBUG" + #- "--log.filePath=/log/traefik.log" + - "--accesslog=true" + #- "--accessLog.filePath=/log/access.log" + - "--api.insecure=false" # pokud chci dashboard + - "--providers.docker=true" + - "--providers.docker.exposedbydefault=false" + - "--entrypoints.web.address=:80" + #- "--entryPoints.websecure.address=:443" + restart: unless-stopped + networks: + - proxy + ports: + - "${HTTP_PORT:-80}:80" + #- "443:443" + volumes: + #- "./traefik/log:/log" + - "/var/run/docker.sock:/var/run/docker.sock:ro" + - "/etc/timezone:/etc/timezone:ro" + environment: + - "TZ=Europe/Prague" + server: + build: + context: ./server + networks: + - proxy + labels: + - 'traefik.enable=true' + - 'traefik.http.routers.server.rule=Host(`${DOMAIN:-localhost}`) && (PathPrefix(`/socket.io`) || PathPrefix(`/api`))' + client: + build: + context: ./client + ports: + - 3000:3000 + networks: + - proxy + labels: + - 'traefik.enable=true' + - 'traefik.http.routers.client.rule=Host(`${DOMAIN:-localhost}`)' + diff --git a/server/Dockerfile b/server/Dockerfile index c9594bd..960a8c3 100644 --- a/server/Dockerfile +++ b/server/Dockerfile @@ -13,4 +13,6 @@ COPY src ./src RUN yarn install --frozen-lockfile RUN yarn build +EXPOSE 3001 + CMD [ "node", "/app/dist/index.js" ] \ No newline at end of file