import { exit } from "node:process"; import { execAsync } from "@dokploy/server"; import { setupDirectories } from "@dokploy/server/setup/config-paths"; import { initializePostgres } from "@dokploy/server/setup/postgres-setup"; import { initializeRedis } from "@dokploy/server/setup/redis-setup"; import { initializeNetwork, initializeSwarm, } from "@dokploy/server/setup/setup"; import { createDefaultMiddlewares, createDefaultServerTraefikConfig, createDefaultTraefikConfig, initializeStandaloneTraefik, TRAEFIK_VERSION, } from "@dokploy/server/setup/traefik-setup"; (async () => { try { setupDirectories(); createDefaultMiddlewares(); await initializeSwarm(); await initializeNetwork(); createDefaultTraefikConfig(); createDefaultServerTraefikConfig(); await execAsync(`docker pull traefik:v${TRAEFIK_VERSION}`); await initializeStandaloneTraefik(); await initializeRedis(); await initializePostgres(); console.log("Dokploy setup completed"); exit(0); } catch (e) { console.error("Error in dokploy setup", e); } })();