From 32f35a6ca0d4f41daa77719c22c276bd3b3ee566 Mon Sep 17 00:00:00 2001 From: Yuki <60097976+binaryYuki@users.noreply.github.com> Date: Thu, 25 Jul 2024 11:25:28 +0800 Subject: [PATCH 1/5] Update traefik-setup.ts --- server/setup/traefik-setup.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/server/setup/traefik-setup.ts b/server/setup/traefik-setup.ts index 4fc383ac3..692be4ce9 100644 --- a/server/setup/traefik-setup.ts +++ b/server/setup/traefik-setup.ts @@ -1,4 +1,4 @@ -import { existsSync, mkdirSync, writeFileSync } from "node:fs"; +import { existsSync, mkdirSync, writeFileSync, chmodSync } from "node:fs"; import path from "node:path"; import type { CreateServiceOptions } from "dockerode"; import { dump } from "js-yaml"; @@ -184,6 +184,9 @@ export const createDefaultTraefikConfig = () => { const yamlStr = dump(configObject); mkdirSync(MAIN_TRAEFIK_PATH, { recursive: true }); writeFileSync(mainConfig, yamlStr, "utf8"); + + const acmeJsonPath = "/etc/dokploy/traefik/dynamic/acme.json"; + chmodSync(acmeJsonPath, '600'); }; export const createDefaultMiddlewares = () => { From 087e2c81ccde63c7f374ca39b243b9a2c61a2264 Mon Sep 17 00:00:00 2001 From: Yuki <60097976+binaryYuki@users.noreply.github.com> Date: Thu, 25 Jul 2024 11:34:18 +0800 Subject: [PATCH 2/5] accept suggestion by coderabbit Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- server/setup/traefik-setup.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/server/setup/traefik-setup.ts b/server/setup/traefik-setup.ts index 692be4ce9..3b07d518d 100644 --- a/server/setup/traefik-setup.ts +++ b/server/setup/traefik-setup.ts @@ -186,7 +186,11 @@ export const createDefaultTraefikConfig = () => { writeFileSync(mainConfig, yamlStr, "utf8"); const acmeJsonPath = "/etc/dokploy/traefik/dynamic/acme.json"; - chmodSync(acmeJsonPath, '600'); + if (existsSync(acmeJsonPath)) { + chmodSync(acmeJsonPath, '600'); + } else { + console.error(`File not found: ${acmeJsonPath}`); + } }; export const createDefaultMiddlewares = () => { From 54c7572447a46e720c30034567f5958106953c0b Mon Sep 17 00:00:00 2001 From: Yuki <60097976+binaryYuki@users.noreply.github.com> Date: Thu, 25 Jul 2024 15:18:59 +0800 Subject: [PATCH 3/5] check if exist Check if the file already exist, if yes modify its mode --- server/setup/traefik-setup.ts | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/server/setup/traefik-setup.ts b/server/setup/traefik-setup.ts index 3b07d518d..b6f5867a8 100644 --- a/server/setup/traefik-setup.ts +++ b/server/setup/traefik-setup.ts @@ -90,6 +90,13 @@ export const createDefaultServerTraefikConfig = () => { console.log("Default traefik config already exists"); return; } + + const acmeJsonPath = "/etc/dokploy/traefik/dynamic/acme.json"; + if (existsSync(acmeJsonPath)) { + chmodSync(acmeJsonPath, '600'); + } else { + console.error(`File not found: ${acmeJsonPath}`); + } const appName = "dokploy"; const serviceURLDefault = `http://${appName}:${process.env.PORT || 3000}`; @@ -184,13 +191,6 @@ export const createDefaultTraefikConfig = () => { const yamlStr = dump(configObject); mkdirSync(MAIN_TRAEFIK_PATH, { recursive: true }); writeFileSync(mainConfig, yamlStr, "utf8"); - - const acmeJsonPath = "/etc/dokploy/traefik/dynamic/acme.json"; - if (existsSync(acmeJsonPath)) { - chmodSync(acmeJsonPath, '600'); - } else { - console.error(`File not found: ${acmeJsonPath}`); - } }; export const createDefaultMiddlewares = () => { From ef689f06d6309e30f4afbbfd80b51d8ef0d6c709 Mon Sep 17 00:00:00 2001 From: Yuki <60097976+binaryYuki@users.noreply.github.com> Date: Thu, 25 Jul 2024 15:25:04 +0800 Subject: [PATCH 4/5] Update traefik-setup.ts --- server/setup/traefik-setup.ts | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/server/setup/traefik-setup.ts b/server/setup/traefik-setup.ts index b6f5867a8..7a5fee4fa 100644 --- a/server/setup/traefik-setup.ts +++ b/server/setup/traefik-setup.ts @@ -86,17 +86,18 @@ export const initializeTraefik = async () => { export const createDefaultServerTraefikConfig = () => { const configFilePath = path.join(DYNAMIC_TRAEFIK_PATH, "dokploy.yml"); - if (existsSync(configFilePath)) { - console.log("Default traefik config already exists"); - return; - } + const acmeJsonPath = path.join(DYNAMIC_TRAEFIK_PATH, "acme.json"); - const acmeJsonPath = "/etc/dokploy/traefik/dynamic/acme.json"; if (existsSync(acmeJsonPath)) { chmodSync(acmeJsonPath, '600'); } else { console.error(`File not found: ${acmeJsonPath}`); } + + if (existsSync(configFilePath)) { + console.log("Default traefik config already exists"); + return; + } const appName = "dokploy"; const serviceURLDefault = `http://${appName}:${process.env.PORT || 3000}`; @@ -191,6 +192,12 @@ export const createDefaultTraefikConfig = () => { const yamlStr = dump(configObject); mkdirSync(MAIN_TRAEFIK_PATH, { recursive: true }); writeFileSync(mainConfig, yamlStr, "utf8"); + const acmeJsonPath = "/etc/dokploy/traefik/dynamic/acme.json"; + if (existsSync(acmeJsonPath)) { + chmodSync(acmeJsonPath, '600'); + } else { + console.error(`File not found: ${acmeJsonPath}, func createDefaultTraefikConfig`); + } }; export const createDefaultMiddlewares = () => { From 9a4b474cdc3aba50c1fd71fc6d18f4e60802a674 Mon Sep 17 00:00:00 2001 From: Mauricio Siu <47042324+Siumauricio@users.noreply.github.com> Date: Thu, 25 Jul 2024 02:04:54 -0600 Subject: [PATCH 5/5] refactor(traefik-setup): change order of chmodsync --- server/setup/traefik-setup.ts | 26 +++++++++----------------- 1 file changed, 9 insertions(+), 17 deletions(-) diff --git a/server/setup/traefik-setup.ts b/server/setup/traefik-setup.ts index 7a5fee4fa..e9f278604 100644 --- a/server/setup/traefik-setup.ts +++ b/server/setup/traefik-setup.ts @@ -1,4 +1,4 @@ -import { existsSync, mkdirSync, writeFileSync, chmodSync } from "node:fs"; +import { chmodSync, existsSync, mkdirSync, writeFileSync } from "node:fs"; import path from "node:path"; import type { CreateServiceOptions } from "dockerode"; import { dump } from "js-yaml"; @@ -86,17 +86,10 @@ export const initializeTraefik = async () => { export const createDefaultServerTraefikConfig = () => { const configFilePath = path.join(DYNAMIC_TRAEFIK_PATH, "dokploy.yml"); - const acmeJsonPath = path.join(DYNAMIC_TRAEFIK_PATH, "acme.json"); - - if (existsSync(acmeJsonPath)) { - chmodSync(acmeJsonPath, '600'); - } else { - console.error(`File not found: ${acmeJsonPath}`); - } - + if (existsSync(configFilePath)) { - console.log("Default traefik config already exists"); - return; + console.log("Default traefik config already exists"); + return; } const appName = "dokploy"; @@ -133,6 +126,11 @@ export const createDefaultServerTraefikConfig = () => { export const createDefaultTraefikConfig = () => { const mainConfig = path.join(MAIN_TRAEFIK_PATH, "traefik.yml"); + const acmeJsonPath = path.join(DYNAMIC_TRAEFIK_PATH, "acme.json"); + + if (existsSync(acmeJsonPath)) { + chmodSync(acmeJsonPath, "600"); + } if (existsSync(mainConfig)) { console.log("Main config already exists"); return; @@ -192,12 +190,6 @@ export const createDefaultTraefikConfig = () => { const yamlStr = dump(configObject); mkdirSync(MAIN_TRAEFIK_PATH, { recursive: true }); writeFileSync(mainConfig, yamlStr, "utf8"); - const acmeJsonPath = "/etc/dokploy/traefik/dynamic/acme.json"; - if (existsSync(acmeJsonPath)) { - chmodSync(acmeJsonPath, '600'); - } else { - console.error(`File not found: ${acmeJsonPath}, func createDefaultTraefikConfig`); - } }; export const createDefaultMiddlewares = () => {