From 4e3aaa2a6980f45dbba297618b4ed0b541b70a5a Mon Sep 17 00:00:00 2001 From: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> Date: Sat, 8 Jun 2024 14:13:43 -0600 Subject: [PATCH] feat(#130): allow to pass enviroment variables to assign custom port on traefik --- server/setup/traefik-setup.ts | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/server/setup/traefik-setup.ts b/server/setup/traefik-setup.ts index a6a8b783..889988d6 100644 --- a/server/setup/traefik-setup.ts +++ b/server/setup/traefik-setup.ts @@ -7,6 +7,10 @@ import type { MainTraefikConfig } from "../utils/traefik/types"; import type { FileConfig } from "../utils/traefik/file-types"; import type { CreateServiceOptions } from "dockerode"; +const TRAEFIK_SSL_PORT = + Number.parseInt(process.env.TRAEFIK_SSL_PORT ?? "", 10) || 443; +const TRAEFIK_PORT = Number.parseInt(process.env.TRAEFIK_PORT ?? "", 10) || 80; + export const initializeTraefik = async () => { const imageName = "traefik:v2.5"; const containerName = "dokploy-traefik"; @@ -47,12 +51,12 @@ export const initializeTraefik = async () => { Ports: [ { TargetPort: 443, - PublishedPort: 443, + PublishedPort: TRAEFIK_SSL_PORT, PublishMode: "host", }, { TargetPort: 80, - PublishedPort: 80, + PublishedPort: TRAEFIK_PORT, PublishMode: "host", }, { @@ -146,10 +150,10 @@ export const createDefaultTraefikConfig = () => { }, entryPoints: { web: { - address: ":80", + address: `:${TRAEFIK_PORT}`, }, websecure: { - address: ":443", + address: `:${TRAEFIK_SSL_PORT}`, ...(process.env.NODE_ENV === "production" && { http: { tls: {