This commit is contained in:
3
bun.lock
3
bun.lock
@@ -20,6 +20,7 @@
|
||||
"dockerode": "^4.0.6",
|
||||
"next": "^15.3.1",
|
||||
"postcss": "^8.5.3",
|
||||
"radash": "^12.1.0",
|
||||
"react": "^19.1.0",
|
||||
"react-dom": "^19.1.0",
|
||||
"semver": "^7.7.1",
|
||||
@@ -335,6 +336,8 @@
|
||||
|
||||
"pump": ["pump@3.0.2", "", { "dependencies": { "end-of-stream": "^1.1.0", "once": "^1.3.1" } }, "sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw=="],
|
||||
|
||||
"radash": ["radash@12.1.0", "", {}, "sha512-b0Zcf09AhqKS83btmUeYBS8tFK7XL2e3RvLmZcm0sTdF1/UUlHSsjXdCcWNxe7yfmAlPve5ym0DmKGtTzP6kVQ=="],
|
||||
|
||||
"react": ["react@19.1.0", "", {}, "sha512-FS+XFBNvn3GTAWq26joslQgWNoFu08F4kl0J4CgdNKADkdSGXQyTCnKteIAJy96Br6YbpEU1LSzV5dYtjMkMDg=="],
|
||||
|
||||
"react-dom": ["react-dom@19.1.0", "", { "dependencies": { "scheduler": "^0.26.0" }, "peerDependencies": { "react": "^19.1.0" } }, "sha512-Xs1hdnE+DyKgeHJeJznQmYMIBG3TKIHJJT95Q58nHLSrElKlGQqDTR2HQ9fx5CN/Gk6Vh/kupBTDLU11/nDk/g=="],
|
||||
|
||||
25
package.json
25
package.json
@@ -15,31 +15,32 @@
|
||||
"update-regctl": "mkdir bin && curl -L https://github.com/regclient/regclient/releases/latest/download/regctl-linux-amd64 >bin/regctl && chmod 755 bin/regctl"
|
||||
},
|
||||
"dependencies": {
|
||||
"@biomejs/biome": "1.9.4",
|
||||
"@t3-oss/env-nextjs": "^0.13.0",
|
||||
"@tailwindcss/postcss": "^4.1.4",
|
||||
"@tanstack/react-query": "^5.74.4",
|
||||
"@trpc/client": "^11.1.1",
|
||||
"@trpc/react-query": "^11.1.1",
|
||||
"@trpc/server": "^11.1.1",
|
||||
"daisyui": "^5.0.28",
|
||||
"dockerode": "^4.0.6",
|
||||
"next": "^15.3.1",
|
||||
"react": "^19.1.0",
|
||||
"react-dom": "^19.1.0",
|
||||
"semver": "^7.7.1",
|
||||
"server-only": "^0.0.1",
|
||||
"superjson": "^2.2.2",
|
||||
"zod": "^3.24.3",
|
||||
"zx": "^8.5.3",
|
||||
"@biomejs/biome": "1.9.4",
|
||||
"@types/bun": "^1.2.10",
|
||||
"@types/dockerode": "^3.3.38",
|
||||
"@types/react": "19.1.2",
|
||||
"@types/react-dom": "^19.1.2",
|
||||
"@types/semver": "^7.7.0",
|
||||
"daisyui": "^5.0.28",
|
||||
"dockerode": "^4.0.6",
|
||||
"next": "^15.3.1",
|
||||
"postcss": "^8.5.3",
|
||||
"radash": "^12.1.0",
|
||||
"react": "^19.1.0",
|
||||
"react-dom": "^19.1.0",
|
||||
"semver": "^7.7.1",
|
||||
"server-only": "^0.0.1",
|
||||
"superjson": "^2.2.2",
|
||||
"tailwindcss": "^4.1.4",
|
||||
"typescript": "^5.8.3"
|
||||
"typescript": "^5.8.3",
|
||||
"zod": "^3.24.3",
|
||||
"zx": "^8.5.3"
|
||||
},
|
||||
"ct3aMetadata": {
|
||||
"initVersion": "7.39.3"
|
||||
|
||||
@@ -2,6 +2,7 @@ import Docker from "dockerode";
|
||||
import semver from "semver";
|
||||
import { z } from "zod";
|
||||
import { $ } from "zx";
|
||||
import { sift } from "radash";
|
||||
|
||||
import { createTRPCRouter, publicProcedure } from "@/server/api/trpc";
|
||||
import { TRPCError, type inferRouterOutputs } from "@trpc/server";
|
||||
@@ -38,7 +39,7 @@ export const dockerRouter = createTRPCRouter({
|
||||
const containers = await getContainers(docker);
|
||||
|
||||
// All this data should be local/from the local docker socket/api
|
||||
let dockerInfo = await Promise.all(
|
||||
let dockerInfo = sift(await Promise.all(
|
||||
containers.map(async (container) => {
|
||||
try {
|
||||
if (!container.Id) {
|
||||
@@ -74,9 +75,7 @@ export const dockerRouter = createTRPCRouter({
|
||||
return null;
|
||||
}
|
||||
}),
|
||||
);
|
||||
|
||||
dockerInfo = dockerInfo.filter((info) => !!info);
|
||||
));
|
||||
|
||||
if (dockerInfo.length === 0) {
|
||||
throw new TRPCError({
|
||||
|
||||
Reference in New Issue
Block a user