Refactor and update various components in the Dokploy application, enhancing functionality and fixing minor issues across multiple pages and features, including dashboard, settings, and API integrations.

This commit is contained in:
Mauricio Siu
2025-08-16 20:18:08 -06:00
parent 0cdacb5501
commit 774365c68e
325 changed files with 1743 additions and 1768 deletions

View File

@@ -1,11 +1,11 @@
import { apiUpdateWebServerMonitoring } from "@/server/db/schema";
import {
IS_CLOUD,
findUserById,
IS_CLOUD,
setupWebMonitoring,
updateUser,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { apiUpdateWebServerMonitoring } from "@/server/db/schema";
import { adminProcedure, createTRPCRouter } from "../trpc";
export const adminRouter = createTRPCRouter({

View File

@@ -1,10 +1,3 @@
import { slugify } from "@/lib/slug";
import {
adminProcedure,
createTRPCRouter,
protectedProcedure,
} from "@/server/api/trpc";
import { generatePassword } from "@/templates/utils";
import { IS_CLOUD } from "@dokploy/server/constants";
import {
apiCreateAi,
@@ -26,11 +19,18 @@ import {
checkServiceAccess,
} from "@dokploy/server/services/user";
import {
type Model,
getProviderHeaders,
type Model,
} from "@dokploy/server/utils/ai/select-ai-provider";
import { TRPCError } from "@trpc/server";
import { z } from "zod";
import { slugify } from "@/lib/slug";
import {
adminProcedure,
createTRPCRouter,
protectedProcedure,
} from "@/server/api/trpc";
import { generatePassword } from "@/templates/utils";
export const aiRouter = createTRPCRouter({
one: protectedProcedure

View File

@@ -1,14 +1,4 @@
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import {
apiCreateBackup,
apiFindOneBackup,
apiRemoveBackup,
apiRestoreBackup,
apiUpdateBackup,
} from "@/server/db/schema";
import { removeJob, schedule, updateJob } from "@/server/utils/backup";
import {
IS_CLOUD,
createBackup,
findBackupById,
findComposeByBackupId,
@@ -22,6 +12,7 @@ import {
findPostgresByBackupId,
findPostgresById,
findServerById,
IS_CLOUD,
keepLatestNBackups,
removeBackupById,
removeScheduleBackup,
@@ -33,7 +24,6 @@ import {
scheduleBackup,
updateBackupById,
} from "@dokploy/server";
import { findDestinationById } from "@dokploy/server/services/destination";
import { runComposeBackup } from "@dokploy/server/utils/backups/compose";
import {
@@ -55,6 +45,15 @@ import {
import { TRPCError } from "@trpc/server";
import { observable } from "@trpc/server/observable";
import { z } from "zod";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import {
apiCreateBackup,
apiFindOneBackup,
apiRemoveBackup,
apiRestoreBackup,
apiUpdateBackup,
} from "@/server/db/schema";
import { removeJob, schedule, updateJob } from "@/server/utils/backup";
interface RcloneFile {
Path: string;

View File

@@ -1,12 +1,3 @@
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
apiBitbucketTestConnection,
apiCreateBitbucket,
apiFindBitbucketBranches,
apiFindOneBitbucket,
apiUpdateBitbucket,
} from "@/server/db/schema";
import {
createBitbucket,
findBitbucketById,
@@ -16,6 +7,15 @@ import {
updateBitbucket,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
apiBitbucketTestConnection,
apiCreateBitbucket,
apiFindBitbucketBranches,
apiFindOneBitbucket,
apiUpdateBitbucket,
} from "@/server/db/schema";
export const bitbucketRouter = createTRPCRouter({
create: protectedProcedure

View File

@@ -1,20 +1,19 @@
import {
createCertificate,
findCertificateById,
IS_CLOUD,
removeCertificateById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { eq } from "drizzle-orm";
import { adminProcedure, createTRPCRouter } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
apiCreateCertificate,
apiFindCertificate,
certificates,
} from "@/server/db/schema";
import { db } from "@/server/db";
import {
IS_CLOUD,
createCertificate,
findCertificateById,
removeCertificateById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { eq } from "drizzle-orm";
export const certificateRouter = createTRPCRouter({
create: adminProcedure
.input(apiCreateCertificate)

View File

@@ -1,4 +1,3 @@
import { getPublicIpWithFallback } from "@/server/wss/terminal";
import {
type DockerNode,
execAsync,
@@ -8,6 +7,7 @@ import {
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { z } from "zod";
import { getPublicIpWithFallback } from "@/server/wss/terminal";
import { createTRPCRouter, protectedProcedure } from "../trpc";
export const clusterRouter = createTRPCRouter({
getNodes: protectedProcedure

View File

@@ -1,20 +1,4 @@
import { slugify } from "@/lib/slug";
import { db } from "@/server/db";
import {
apiCreateCompose,
apiDeleteCompose,
apiFetchServices,
apiFindCompose,
apiRandomizeCompose,
apiUpdateCompose,
compose as composeTable,
} from "@/server/db/schema";
import type { DeploymentJob } from "@/server/queues/queue-types";
import { cleanQueuesByCompose, myQueue } from "@/server/queues/queueSetup";
import { deploy } from "@/server/utils/deploy";
import { generatePassword } from "@/templates/utils";
import {
IS_CLOUD,
addDomainToCompose,
addNewService,
checkServiceAccess,
@@ -33,6 +17,7 @@ import {
findServerById,
findUserById,
getComposeContainer,
IS_CLOUD,
loadServices,
randomizeComposeFile,
randomizeIsolatedDeploymentComposeFile,
@@ -57,6 +42,21 @@ import _ from "lodash";
import { nanoid } from "nanoid";
import { parse } from "toml";
import { z } from "zod";
import { slugify } from "@/lib/slug";
import { db } from "@/server/db";
import {
apiCreateCompose,
apiDeleteCompose,
apiFetchServices,
apiFindCompose,
apiRandomizeCompose,
apiUpdateCompose,
compose as composeTable,
} from "@/server/db/schema";
import type { DeploymentJob } from "@/server/queues/queue-types";
import { cleanQueuesByCompose, myQueue } from "@/server/queues/queueSetup";
import { deploy } from "@/server/utils/deploy";
import { generatePassword } from "@/templates/utils";
import { createTRPCRouter, protectedProcedure, publicProcedure } from "../trpc";
export const composeRouter = createTRPCRouter({

View File

@@ -1,11 +1,3 @@
import { db } from "@/server/db";
import {
apiFindAllByApplication,
apiFindAllByCompose,
apiFindAllByServer,
apiFindAllByType,
deployments,
} from "@/server/db/schema";
import {
execAsync,
execAsyncRemote,
@@ -21,6 +13,14 @@ import {
import { TRPCError } from "@trpc/server";
import { desc, eq } from "drizzle-orm";
import { z } from "zod";
import { db } from "@/server/db";
import {
apiFindAllByApplication,
apiFindAllByCompose,
apiFindAllByServer,
apiFindAllByType,
deployments,
} from "@/server/db/schema";
import { createTRPCRouter, protectedProcedure } from "../trpc";
export const deploymentRouter = createTRPCRouter({

View File

@@ -1,3 +1,14 @@
import {
createDestintation,
execAsync,
execAsyncRemote,
findDestinationById,
IS_CLOUD,
removeDestinationById,
updateDestinationById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { desc, eq } from "drizzle-orm";
import {
adminProcedure,
createTRPCRouter,
@@ -11,17 +22,6 @@ import {
apiUpdateDestination,
destinations,
} from "@/server/db/schema";
import {
IS_CLOUD,
createDestintation,
execAsync,
execAsyncRemote,
findDestinationById,
removeDestinationById,
updateDestinationById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { desc, eq } from "drizzle-orm";
export const destinationRouter = createTRPCRouter({
create: adminProcedure

View File

@@ -1,11 +1,3 @@
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import {
apiCreateDomain,
apiFindCompose,
apiFindDomain,
apiFindOneApplication,
apiUpdateDomain,
} from "@/server/db/schema";
import {
createDomain,
findApplicationById,
@@ -25,6 +17,14 @@ import {
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { z } from "zod";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import {
apiCreateDomain,
apiFindCompose,
apiFindDomain,
apiFindOneApplication,
apiUpdateDomain,
} from "@/server/db/schema";
export const domainRouter = createTRPCRouter({
create: protectedProcedure

View File

@@ -1,9 +1,9 @@
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import { apiRemoveGitProvider, gitProvider } from "@/server/db/schema";
import { findGitProviderById, removeGitProvider } from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { and, desc, eq } from "drizzle-orm";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import { apiRemoveGitProvider, gitProvider } from "@/server/db/schema";
export const gitProviderRouter = createTRPCRouter({
getAll: protectedProcedure.query(async ({ ctx }) => {

View File

@@ -1,13 +1,3 @@
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import {
apiCreateGitea,
apiFindGiteaBranches,
apiFindOneGitea,
apiGiteaTestConnection,
apiUpdateGitea,
} from "@/server/db/schema";
import { db } from "@/server/db";
import {
createGitea,
findGiteaById,
@@ -15,11 +5,19 @@ import {
getGiteaRepositories,
haveGiteaRequirements,
testGiteaConnection,
updateGitProvider,
updateGitea,
updateGitProvider,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
apiCreateGitea,
apiFindGiteaBranches,
apiFindOneGitea,
apiGiteaTestConnection,
apiUpdateGitea,
} from "@/server/db/schema";
export const giteaRouter = createTRPCRouter({
create: protectedProcedure

View File

@@ -1,10 +1,3 @@
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
apiFindGithubBranches,
apiFindOneGithub,
apiUpdateGithub,
} from "@/server/db/schema";
import {
findGithubById,
getGithubBranches,
@@ -13,6 +6,13 @@ import {
updateGitProvider,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
apiFindGithubBranches,
apiFindOneGithub,
apiUpdateGithub,
} from "@/server/db/schema";
export const githubRouter = createTRPCRouter({
one: protectedProcedure

View File

@@ -1,13 +1,3 @@
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import {
apiCreateGitlab,
apiFindGitlabBranches,
apiFindOneGitlab,
apiGitlabTestConnection,
apiUpdateGitlab,
} from "@/server/db/schema";
import { db } from "@/server/db";
import {
createGitlab,
findGitlabById,
@@ -15,10 +5,19 @@ import {
getGitlabRepositories,
haveGitlabRequirements,
testGitlabConnection,
updateGitProvider,
updateGitlab,
updateGitProvider,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
apiCreateGitlab,
apiFindGitlabBranches,
apiFindOneGitlab,
apiGitlabTestConnection,
apiUpdateGitlab,
} from "@/server/db/schema";
export const gitlabRouter = createTRPCRouter({
create: protectedProcedure

View File

@@ -1,3 +1,26 @@
import {
addNewService,
checkServiceAccess,
createMariadb,
createMount,
deployMariadb,
findBackupsByDbId,
findMariadbById,
findProjectById,
IS_CLOUD,
rebuildDatabase,
removeMariadbById,
removeService,
startService,
startServiceRemote,
stopService,
stopServiceRemote,
updateMariadbById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { observable } from "@trpc/server/observable";
import { eq } from "drizzle-orm";
import { z } from "zod";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
@@ -13,29 +36,6 @@ import {
mariadb as mariadbTable,
} from "@/server/db/schema";
import { cancelJobs } from "@/server/utils/backup";
import {
IS_CLOUD,
addNewService,
checkServiceAccess,
createMariadb,
createMount,
deployMariadb,
findBackupsByDbId,
findMariadbById,
findProjectById,
removeMariadbById,
removeService,
startService,
startServiceRemote,
stopService,
stopServiceRemote,
updateMariadbById,
} from "@dokploy/server";
import { rebuildDatabase } from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { observable } from "@trpc/server/observable";
import { eq } from "drizzle-orm";
import { z } from "zod";
export const mariadbRouter = createTRPCRouter({
create: protectedProcedure
.input(apiCreateMariaDB)

View File

@@ -1,3 +1,26 @@
import {
addNewService,
checkServiceAccess,
createMongo,
createMount,
deployMongo,
findBackupsByDbId,
findMongoById,
findProjectById,
IS_CLOUD,
rebuildDatabase,
removeMongoById,
removeService,
startService,
startServiceRemote,
stopService,
stopServiceRemote,
updateMongoById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { observable } from "@trpc/server/observable";
import { eq } from "drizzle-orm";
import { z } from "zod";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
@@ -13,29 +36,6 @@ import {
mongo as mongoTable,
} from "@/server/db/schema";
import { cancelJobs } from "@/server/utils/backup";
import {
IS_CLOUD,
addNewService,
checkServiceAccess,
createMongo,
createMount,
deployMongo,
findBackupsByDbId,
findMongoById,
findProjectById,
removeMongoById,
removeService,
startService,
startServiceRemote,
stopService,
stopServiceRemote,
updateMongoById,
} from "@dokploy/server";
import { rebuildDatabase } from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { observable } from "@trpc/server/observable";
import { eq } from "drizzle-orm";
import { z } from "zod";
export const mongoRouter = createTRPCRouter({
create: protectedProcedure
.input(apiCreateMongo)

View File

@@ -1,9 +1,3 @@
import {
apiCreateMount,
apiFindOneMount,
apiRemoveMount,
apiUpdateMount,
} from "@/server/db/schema";
import {
createMount,
deleteMount,
@@ -13,6 +7,12 @@ import {
updateMount,
} from "@dokploy/server";
import { z } from "zod";
import {
apiCreateMount,
apiFindOneMount,
apiRemoveMount,
apiUpdateMount,
} from "@/server/db/schema";
import { createTRPCRouter, protectedProcedure } from "../trpc";
export const mountRouter = createTRPCRouter({

View File

@@ -1,4 +1,28 @@
import {
addNewService,
checkServiceAccess,
createMount,
createMysql,
deployMySql,
findBackupsByDbId,
findMySqlById,
findProjectById,
IS_CLOUD,
rebuildDatabase,
removeMySqlById,
removeService,
startService,
startServiceRemote,
stopService,
stopServiceRemote,
updateMySqlById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { observable } from "@trpc/server/observable";
import { eq } from "drizzle-orm";
import { z } from "zod";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
apiChangeMySqlStatus,
apiCreateMySql,
@@ -11,33 +35,7 @@ import {
apiUpdateMySql,
mysql as mysqlTable,
} from "@/server/db/schema";
import { TRPCError } from "@trpc/server";
import { db } from "@/server/db";
import { cancelJobs } from "@/server/utils/backup";
import {
IS_CLOUD,
addNewService,
checkServiceAccess,
createMount,
createMysql,
deployMySql,
findBackupsByDbId,
findMySqlById,
findProjectById,
rebuildDatabase,
removeMySqlById,
removeService,
startService,
startServiceRemote,
stopService,
stopServiceRemote,
updateMySqlById,
} from "@dokploy/server";
import { observable } from "@trpc/server/observable";
import { eq } from "drizzle-orm";
import { z } from "zod";
export const mysqlRouter = createTRPCRouter({
create: protectedProcedure

View File

@@ -1,3 +1,27 @@
import {
createDiscordNotification,
createEmailNotification,
createGotifyNotification,
createSlackNotification,
createTelegramNotification,
findNotificationById,
IS_CLOUD,
removeNotificationById,
sendDiscordNotification,
sendEmailNotification,
sendGotifyNotification,
sendServerThresholdNotifications,
sendSlackNotification,
sendTelegramNotification,
updateDiscordNotification,
updateEmailNotification,
updateGotifyNotification,
updateSlackNotification,
updateTelegramNotification,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { desc, eq, sql } from "drizzle-orm";
import { z } from "zod";
import {
adminProcedure,
createTRPCRouter,
@@ -26,30 +50,6 @@ import {
server,
users_temp,
} from "@/server/db/schema";
import {
IS_CLOUD,
createDiscordNotification,
createEmailNotification,
createGotifyNotification,
createSlackNotification,
createTelegramNotification,
findNotificationById,
removeNotificationById,
sendDiscordNotification,
sendEmailNotification,
sendGotifyNotification,
sendServerThresholdNotifications,
sendSlackNotification,
sendTelegramNotification,
updateDiscordNotification,
updateEmailNotification,
updateGotifyNotification,
updateSlackNotification,
updateTelegramNotification,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { desc, eq, sql } from "drizzle-orm";
import { z } from "zod";
export const notificationRouter = createTRPCRouter({
createSlack: adminProcedure

View File

@@ -1,10 +1,10 @@
import { db } from "@/server/db";
import { invitation, member, organization } from "@/server/db/schema";
import { IS_CLOUD } from "@dokploy/server/index";
import { TRPCError } from "@trpc/server";
import { and, desc, eq, exists } from "drizzle-orm";
import { nanoid } from "nanoid";
import { z } from "zod";
import { db } from "@/server/db";
import { invitation, member, organization } from "@/server/db/schema";
import { adminProcedure, createTRPCRouter, protectedProcedure } from "../trpc";
export const organizationRouter = createTRPCRouter({
create: protectedProcedure

View File

@@ -1,9 +1,3 @@
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import {
apiCreatePort,
apiFindOnePort,
apiUpdatePort,
} from "@/server/db/schema";
import {
createPort,
finPortById,
@@ -11,6 +5,12 @@ import {
updatePortById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import {
apiCreatePort,
apiFindOnePort,
apiUpdatePort,
} from "@/server/db/schema";
export const portRouter = createTRPCRouter({
create: protectedProcedure

View File

@@ -1,3 +1,26 @@
import {
addNewService,
checkServiceAccess,
createMount,
createPostgres,
deployPostgres,
findBackupsByDbId,
findPostgresById,
findProjectById,
IS_CLOUD,
rebuildDatabase,
removePostgresById,
removeService,
startService,
startServiceRemote,
stopService,
stopServiceRemote,
updatePostgresById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { observable } from "@trpc/server/observable";
import { eq } from "drizzle-orm";
import { z } from "zod";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
@@ -13,29 +36,6 @@ import {
postgres as postgresTable,
} from "@/server/db/schema";
import { cancelJobs } from "@/server/utils/backup";
import {
IS_CLOUD,
addNewService,
checkServiceAccess,
createMount,
createPostgres,
deployPostgres,
findBackupsByDbId,
findPostgresById,
findProjectById,
rebuildDatabase,
removePostgresById,
removeService,
startService,
startServiceRemote,
stopService,
stopServiceRemote,
updatePostgresById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { observable } from "@trpc/server/observable";
import { eq } from "drizzle-orm";
import { z } from "zod";
export const postgresRouter = createTRPCRouter({
create: protectedProcedure
.input(apiCreatePostgres)

View File

@@ -1,4 +1,3 @@
import { apiFindAllByApplication } from "@/server/db/schema";
import {
findApplicationById,
findPreviewDeploymentById,
@@ -7,6 +6,7 @@ import {
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { z } from "zod";
import { apiFindAllByApplication } from "@/server/db/schema";
import { createTRPCRouter, protectedProcedure } from "../trpc";
export const previewDeploymentRouter = createTRPCRouter({

View File

@@ -1,23 +1,4 @@
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
apiCreateProject,
apiFindOneProject,
apiRemoveProject,
apiUpdateProject,
applications,
compose,
mariadb,
mongo,
mysql,
postgres,
projects,
redis,
} from "@/server/db/schema";
import { z } from "zod";
import {
IS_CLOUD,
addNewProject,
checkProjectAccess,
createApplication,
@@ -46,11 +27,29 @@ import {
findProjectById,
findRedisById,
findUserById,
IS_CLOUD,
updateProjectById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { and, desc, eq, sql } from "drizzle-orm";
import type { AnyPgColumn } from "drizzle-orm/pg-core";
import { z } from "zod";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
apiCreateProject,
apiFindOneProject,
apiRemoveProject,
apiUpdateProject,
applications,
compose,
mariadb,
mongo,
mysql,
postgres,
projects,
redis,
} from "@/server/db/schema";
export const projectRouter = createTRPCRouter({
create: protectedProcedure

View File

@@ -1,8 +1,3 @@
import {
apiCreateRedirect,
apiFindOneRedirect,
apiUpdateRedirect,
} from "@/server/db/schema";
import {
createRedirect,
findApplicationById,
@@ -11,6 +6,11 @@ import {
updateRedirectById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import {
apiCreateRedirect,
apiFindOneRedirect,
apiUpdateRedirect,
} from "@/server/db/schema";
import { createTRPCRouter, protectedProcedure } from "../trpc";
export const redirectsRouter = createTRPCRouter({

View File

@@ -1,4 +1,28 @@
import {
addNewService,
checkServiceAccess,
createMount,
createRedis,
deployRedis,
findProjectById,
findRedisById,
IS_CLOUD,
rebuildDatabase,
removeRedisById,
removeService,
startService,
startServiceRemote,
stopService,
stopServiceRemote,
updateRedisById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { observable } from "@trpc/server/observable";
import { eq } from "drizzle-orm";
import { z } from "zod";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
apiChangeRedisStatus,
apiCreateRedis,
@@ -11,31 +35,6 @@ import {
apiUpdateRedis,
redis as redisTable,
} from "@/server/db/schema";
import { TRPCError } from "@trpc/server";
import { db } from "@/server/db";
import {
IS_CLOUD,
addNewService,
checkServiceAccess,
createMount,
createRedis,
deployRedis,
findProjectById,
findRedisById,
removeRedisById,
removeService,
startService,
startServiceRemote,
stopService,
stopServiceRemote,
updateRedisById,
} from "@dokploy/server";
import { rebuildDatabase } from "@dokploy/server";
import { observable } from "@trpc/server/observable";
import { eq } from "drizzle-orm";
import { z } from "zod";
export const redisRouter = createTRPCRouter({
create: protectedProcedure
.input(apiCreateRedis)

View File

@@ -1,3 +1,14 @@
import {
createRegistry,
execAsyncRemote,
execFileAsync,
findRegistryById,
IS_CLOUD,
removeRegistry,
updateRegistry,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { eq } from "drizzle-orm";
import { db } from "@/server/db";
import {
apiCreateRegistry,
@@ -7,17 +18,6 @@ import {
apiUpdateRegistry,
registry,
} from "@/server/db/schema";
import {
IS_CLOUD,
createRegistry,
execAsyncRemote,
execFileAsync,
findRegistryById,
removeRegistry,
updateRegistry,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { eq } from "drizzle-orm";
import { adminProcedure, createTRPCRouter, protectedProcedure } from "../trpc";
export const registryRouter = createTRPCRouter({
create: adminProcedure

View File

@@ -1,7 +1,7 @@
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { apiFindOneRollback } from "@/server/db/schema";
import { removeRollbackById, rollback } from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { apiFindOneRollback } from "@/server/db/schema";
export const rollbackRouter = createTRPCRouter({
delete: protectedProcedure

View File

@@ -1,6 +1,4 @@
import { removeJob, schedule } from "@/server/utils/backup";
import { IS_CLOUD, scheduleJob } from "@dokploy/server";
import { removeScheduleJob } from "@dokploy/server";
import { IS_CLOUD, removeScheduleJob, scheduleJob } from "@dokploy/server";
import { db } from "@dokploy/server/db";
import { deployments } from "@dokploy/server/db/schema/deployment";
import {
@@ -18,6 +16,7 @@ import {
import { TRPCError } from "@trpc/server";
import { desc, eq } from "drizzle-orm";
import { z } from "zod";
import { removeJob, schedule } from "@/server/utils/backup";
import { createTRPCRouter, protectedProcedure } from "../trpc";
export const scheduleRouter = createTRPCRouter({
create: protectedProcedure

View File

@@ -1,8 +1,3 @@
import {
apiCreateSecurity,
apiFindOneSecurity,
apiUpdateSecurity,
} from "@/server/db/schema";
import {
createSecurity,
deleteSecurityById,
@@ -11,6 +6,11 @@ import {
updateSecurityById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import {
apiCreateSecurity,
apiFindOneSecurity,
apiUpdateSecurity,
} from "@/server/db/schema";
import { createTRPCRouter, protectedProcedure } from "../trpc";
export const securityRouter = createTRPCRouter({

View File

@@ -1,3 +1,24 @@
import {
createServer,
defaultCommand,
deleteServer,
findServerById,
findServersByUserId,
findUserById,
getPublicIpWithFallback,
haveActiveServices,
IS_CLOUD,
removeDeploymentsByServerId,
serverAudit,
serverSetup,
serverValidate,
setupMonitoring,
updateServerById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { observable } from "@trpc/server/observable";
import { and, desc, eq, getTableColumns, isNotNull, sql } from "drizzle-orm";
import { z } from "zod";
import { updateServersBasedOnQuantity } from "@/pages/api/stripe/webhook";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
@@ -17,27 +38,6 @@ import {
redis,
server,
} from "@/server/db/schema";
import {
IS_CLOUD,
createServer,
defaultCommand,
deleteServer,
findServerById,
findServersByUserId,
findUserById,
getPublicIpWithFallback,
haveActiveServices,
removeDeploymentsByServerId,
serverAudit,
serverSetup,
serverValidate,
setupMonitoring,
updateServerById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { observable } from "@trpc/server/observable";
import { and, desc, eq, getTableColumns, isNotNull, sql } from "drizzle-orm";
import { z } from "zod";
export const serverRouter = createTRPCRouter({
create: protectedProcedure

View File

@@ -1,3 +1,12 @@
import {
createSshKey,
findSSHKeyById,
generateSSHKey,
removeSSHKeyById,
updateSSHKeyById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { desc, eq } from "drizzle-orm";
import { createTRPCRouter, protectedProcedure } from "@/server/api/trpc";
import { db } from "@/server/db";
import {
@@ -8,15 +17,6 @@ import {
apiUpdateSshKey,
sshKeys,
} from "@/server/db/schema";
import {
createSshKey,
findSSHKeyById,
generateSSHKey,
removeSSHKeyById,
updateSSHKeyById,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import { desc, eq } from "drizzle-orm";
export const sshRouter = createTRPCRouter({
create: protectedProcedure

View File

@@ -1,13 +1,13 @@
import { WEBSITE_URL, getStripeItems } from "@/server/utils/stripe";
import {
IS_CLOUD,
findServersByUserId,
findUserById,
IS_CLOUD,
updateUser,
} from "@dokploy/server";
import { TRPCError } from "@trpc/server";
import Stripe from "stripe";
import { z } from "zod";
import { getStripeItems, WEBSITE_URL } from "@/server/utils/stripe";
import { adminProcedure, createTRPCRouter } from "../trpc";
export const stripeRouter = createTRPCRouter({

View File

@@ -1,11 +1,11 @@
import {
IS_CLOUD,
createApiKey,
findAdmin,
findNotificationById,
findOrganizationById,
findUserById,
getUserByToken,
IS_CLOUD,
removeUserById,
sendEmailNotification,
updateUser,
@@ -15,8 +15,8 @@ import {
account,
apiAssignPermissions,
apiFindOneToken,
apiUpdateUser,
apikey,
apiUpdateUser,
invitation,
member,
} from "@dokploy/server/db/schema";

View File

@@ -1,8 +1,7 @@
import { removeJob, schedule, updateJob } from "@/server/utils/backup";
import {
IS_CLOUD,
createVolumeBackup,
findVolumeBackupById,
IS_CLOUD,
removeVolumeBackup,
removeVolumeBackupJob,
restoreVolume,
@@ -24,6 +23,7 @@ import { TRPCError } from "@trpc/server";
import { observable } from "@trpc/server/observable";
import { eq } from "drizzle-orm";
import { z } from "zod";
import { removeJob, schedule, updateJob } from "@/server/utils/backup";
import { createTRPCRouter, protectedProcedure } from "../trpc";
export const volumeBackupsRouter = createTRPCRouter({

View File

@@ -7,11 +7,9 @@
* need to use are documented accordingly near the end.
*/
// import { getServerAuthSession } from "@/server/auth";
import { db } from "@/server/db";
import { validateRequest } from "@dokploy/server/lib/auth";
import type { OpenApiMeta } from "@dokploy/trpc-openapi";
import { TRPCError, initTRPC } from "@trpc/server";
import { initTRPC, TRPCError } from "@trpc/server";
import type { CreateNextContextOptions } from "@trpc/server/adapters/next";
import {
experimental_createMemoryUploadHandler,
@@ -21,6 +19,9 @@ import {
import type { Session, User } from "better-auth";
import superjson from "superjson";
import { ZodError } from "zod";
// import { getServerAuthSession } from "@/server/auth";
import { db } from "@/server/db";
/**
* 1. CONTEXT
*

View File

@@ -1,4 +1,4 @@
import { type PostgresJsDatabase, drizzle } from "drizzle-orm/postgres-js";
import { drizzle, type PostgresJsDatabase } from "drizzle-orm/postgres-js";
import postgres from "postgres";
import * as schema from "./schema";

View File

@@ -1,19 +1,19 @@
import http from "node:http";
import { migration } from "@/server/db/migration";
import {
IS_CLOUD,
createDefaultMiddlewares,
createDefaultServerTraefikConfig,
createDefaultTraefikConfig,
IS_CLOUD,
initCronJobs,
initializeNetwork,
initSchedules,
initVolumeBackupsCronJobs,
initializeNetwork,
sendDokployRestartNotifications,
setupDirectories,
} from "@dokploy/server";
import { config } from "dotenv";
import next from "next";
import { migration } from "@/server/db/migration";
import { setupDockerContainerLogsWebSocketServer } from "./wss/docker-container-logs";
import { setupDockerContainerTerminalWebSocketServer } from "./wss/docker-container-terminal";
import { setupDockerStatsMonitoringSocketServer } from "./wss/docker-stats";

View File

@@ -1,5 +1,5 @@
import type http from "node:http";
import { IS_CLOUD, findServerById, validateRequest } from "@dokploy/server";
import { findServerById, IS_CLOUD, validateRequest } from "@dokploy/server";
import { publicIpv4, publicIpv6 } from "public-ip";
import { Client, type ConnectConfig } from "ssh2";
import { WebSocketServer } from "ws";