From b8fe717abb55470ab2ccb7bf1dd95acb4b19d198 Mon Sep 17 00:00:00 2001 From: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> Date: Mon, 24 Mar 2025 00:00:50 -0600 Subject: [PATCH] feat: add Docker service creation for Traefik in dokploy installation script --- apps/website/public/canary.sh | 45 ++++++++++++++++++++++++++++++++-- apps/website/public/feature.sh | 2 +- 2 files changed, 44 insertions(+), 3 deletions(-) diff --git a/apps/website/public/canary.sh b/apps/website/public/canary.sh index f4deed1..b1ba8a0 100644 --- a/apps/website/public/canary.sh +++ b/apps/website/public/canary.sh @@ -106,8 +106,23 @@ install_dokploy() { chmod 777 /etc/dokploy - docker pull postgres:16 - docker pull redis:7 + docker service create \ + --name dokploy-postgres \ + --constraint 'node.role==manager' \ + --network dokploy-network \ + --env POSTGRES_USER=dokploy \ + --env POSTGRES_DB=dokploy \ + --env POSTGRES_PASSWORD=amukds4wi9001583845717ad2 \ + --mount type=volume,source=dokploy-postgres-database,target=/var/lib/postgresql/data \ + postgres:16 + + docker service create \ + --name dokploy-redis \ + --constraint 'node.role==manager' \ + --network dokploy-network \ + --mount type=volume,source=redis-data-volume,target=/data \ + redis:7 + docker pull traefik:v3.1.2 docker pull dokploy/dokploy:canary @@ -127,6 +142,32 @@ install_dokploy() { -e ADVERTISE_ADDR=$advertise_addr \ dokploy/dokploy:canary + docker run -d \ + --name dokploy-traefik \ + --network dokploy-network \ + --restart always \ + -v /etc/dokploy/traefik/traefik.yml:/etc/traefik/traefik.yml \ + -v /etc/dokploy/traefik/dynamic:/etc/dokploy/traefik/dynamic \ + -v /var/run/docker.sock:/var/run/docker.sock \ + -p 80:80/tcp \ + -p 443:443/tcp \ + -p 443:443/udp \ + traefik:v3.1.2 + + # Optional: Use docker service create instead of docker run + # docker service create \ + # --name dokploy-traefik \ + # --constraint 'node.role==manager' \ + # --network dokploy-network \ + # --mount type=bind,source=/etc/dokploy/traefik/traefik.yml,target=/etc/traefik/traefik.yml \ + # --mount type=bind,source=/etc/dokploy/traefik/dynamic,target=/etc/dokploy/traefik/dynamic \ + # --mount type=bind,source=/var/run/docker.sock,target=/var/run/docker.sock \ + # --publish mode=host,published=443,target=443 \ + # --publish mode=host,published=80,target=80 \ + # --publish mode=host,published=443,target=443,protocol=udp \ + # traefik:v3.1.2 + + GREEN="\033[0;32m" YELLOW="\033[1;33m" BLUE="\033[0;34m" diff --git a/apps/website/public/feature.sh b/apps/website/public/feature.sh index f88e91d..a444af0 100644 --- a/apps/website/public/feature.sh +++ b/apps/website/public/feature.sh @@ -156,7 +156,7 @@ install_dokploy() { -p 443:443/udp \ traefik:v3.1.2 - + # Optional: Use docker service create instead of docker run # docker service create \ # --name dokploy-traefik \ # --constraint 'node.role==manager' \