From 73e7c947d88edc7355abdee5b050de2ec871a6d7 Mon Sep 17 00:00:00 2001 From: Marco Pedone Date: Thu, 7 Aug 2025 19:31:51 +0200 Subject: [PATCH] web2 --- apps/infoalloggi/Dockerfile | 13 ++- apps/infoalloggi/next.config.mjs | 4 + apps/infoalloggi/package.json | 4 +- apps/infoalloggi/src/pages/api/panel.ts | 3 - docker-compose.yml | 133 ++++++++++++------------ 5 files changed, 84 insertions(+), 73 deletions(-) diff --git a/apps/infoalloggi/Dockerfile b/apps/infoalloggi/Dockerfile index e517f4c..0c850ea 100644 --- a/apps/infoalloggi/Dockerfile +++ b/apps/infoalloggi/Dockerfile @@ -6,7 +6,12 @@ FROM base AS deps RUN apk add --no-cache libc6-compat openssl WORKDIR /app COPY package*.json package-lock.json* ./ -RUN npm ci +ENV NODE_ENV=production + +RUN echo "base variables: $NODE_ENV is set to $NODE_ENV" +RUN npm ci --omit=dev + +RUN echo "Dependencies installed successfully" # Builder stage # This stage is used to build the application @@ -14,6 +19,8 @@ FROM base AS builder WORKDIR /app COPY --from=deps /app/node_modules ./node_modules COPY . . + + ENV NODE_ENV=production ARG BASE_URL ENV NEXT_PUBLIC_BASE_URL=$BASE_URL @@ -66,6 +73,10 @@ ENV SKIP_REDIS="true" RUN SKIP_ENV_VALIDATION=1 npm run build +RUN echo "variables: $BASE_URL, $INTERNAL_BASE_URL, $POSTGRES_USER, $POSTGRES_PASSWORD, $POSTGRES_DB, $PGHOST, $PGPORT, $JWT_SECRET, $BACKENDSERVER_URL, $SENDGRID_API_KEY, $STRIPE_SECRET_KEY, $NEXT_PUBLIC_STRIPE_PUBLIC_KEY, $STRIPE_LIMITED_KEY, $STRIPE_WEBHOOK_SECRET, $FIC_CLIENT_ID, $FIC_ACCESS_TOKEN, $FIC_COMPANY_ID, $ARUBA_USER, $ARUBA_PASS, $EXP_API_USER, $EXP_API_PASS, $KEYDB_URL, $TILES_URL are set successfully" + +RUN echo "Build completed successfully" + # Runner stage # This stage is used to run the built application FROM base AS runner diff --git a/apps/infoalloggi/next.config.mjs b/apps/infoalloggi/next.config.mjs index 379eddd..6134c6a 100644 --- a/apps/infoalloggi/next.config.mjs +++ b/apps/infoalloggi/next.config.mjs @@ -38,6 +38,10 @@ const nextConfig = { devIndicators: false, rewrites: async () => { return [ + { + source: "/api/panel", + destination: env.NODE_ENV === "production" ? "/404" : "/api/panel", + }, { source: "/go-api/images/get/:slug*", destination: env.BACKENDSERVER_URL + "/images/get/:slug*", diff --git a/apps/infoalloggi/package.json b/apps/infoalloggi/package.json index f3cffe6..a434c67 100644 --- a/apps/infoalloggi/package.json +++ b/apps/infoalloggi/package.json @@ -91,6 +91,7 @@ "tailwind-merge": "3.3", "tailwind-scrollbar": "^4.0.2", "tailwindcss": "^4.1.11", + "trpc-ui": "https://gitpkg.vercel.app/jrhe/trpc-ui/packages/trpc-ui?feature/zod-v4-support&scripts.postinstall=%26%26%20npm%20install%20pnpm%20%26%26%20npm%20install%20--ignore-scripts%20%26%26%20npm%20run%20build", "tw-animate-css": "^1.3.6", "type-fest": "^4.41.0", "uuid": "^11.1.0", @@ -139,11 +140,10 @@ "prettier": "^3.6.2", "prettier-plugin-classnames": "^0.8.2", "prettier-plugin-tailwindcss": "^0.6.14", - "trpc-ui": "https://gitpkg.vercel.app/jrhe/trpc-ui/packages/trpc-ui?feature/zod-v4-support&scripts.postinstall=%26%26%20npm%20install%20pnpm%20%26%26%20npm%20install%20--ignore-scripts%20%26%26%20npm%20run%20build", "typescript": "^5.9.2", "typescript-eslint": "^8.39.0" }, "ct3aMetadata": { "initVersion": "7.9.0" } -} +} \ No newline at end of file diff --git a/apps/infoalloggi/src/pages/api/panel.ts b/apps/infoalloggi/src/pages/api/panel.ts index b767958..618b7a7 100644 --- a/apps/infoalloggi/src/pages/api/panel.ts +++ b/apps/infoalloggi/src/pages/api/panel.ts @@ -4,9 +4,6 @@ import { env } from "~/env.mjs"; import { appRouter } from "~/server/api/root"; export default async function handler(_: NextApiRequest, res: NextApiResponse) { - if (env.NODE_ENV !== "development") { - return res.status(404).send("Not Found"); - } if (!env.NEXT_PUBLIC_BASE_URL.includes("localhost")) { return res.status(404).send("Not Found"); } diff --git a/docker-compose.yml b/docker-compose.yml index 5f20b44..c8ea0cd 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -121,73 +121,72 @@ services: tiles: condition: service_healthy - # web: - # platform: "linux/amd64" - # build: - # context: ./apps/infoalloggi - # dockerfile: Dockerfile - # args: - # INTERNAL_BASE_URL: http://web:3000 - # POSTGRES_USER: ${POSTGRES_USER} - # POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} - # POSTGRES_DB: ${POSTGRES_DB} - # PGHOST: db - # PGPORT: "5432" - # BACKENDSERVER_URL: http://backend:1323 - # TILES_URL: tiles:6379 - # KEYDB_URL: keydb:6379 - # BASE_URL: ${BASE_URL} - # SENDGRID_API_KEY: ${SENDGRID_API_KEY} - # STRIPE_SECRET_KEY: ${STRIPE_SECRET_KEY} - # NEXT_PUBLIC_STRIPE_PUBLIC_KEY: ${NEXT_PUBLIC_STRIPE_PUBLIC_KEY} - # STRIPE_LIMITED_KEY: ${STRIPE_LIMITED_KEY} - # STRIPE_WEBHOOK_SECRET: ${STRIPE_WEBHOOK_SECRET} - # FIC_CLIENT_ID: ${FIC_CLIENT_ID} - # FIC_ACCESS_TOKEN: ${FIC_ACCESS_TOKEN} - # FIC_COMPANY_ID: ${FIC_COMPANY_ID} - # ARUBA_USER: ${ARUBA_USER} - # ARUBA_PASS: ${ARUBA_PASS} - # EXP_API_USER: ${EXP_API_USER} - # EXP_API_PASS: ${EXP_API_PASS} - # JWT_SECRET: ${JWT_SECRET} - # working_dir: /app - # environment: - # INTERNAL_BASE_URL: http://web:3000 - # POSTGRES_USER: ${POSTGRES_USER} - # POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} - # POSTGRES_DB: ${POSTGRES_DB} - # PGHOST: db - # PGPORT: "5432" - # BACKENDSERVER_URL: http://backend:1323 - # KEYDB_URL: keydb:6379 - # TILES_URL: tiles:6379 - # BASE_URL: ${BASE_URL} - # SENDGRID_API_KEY: ${SENDGRID_API_KEY} - # STRIPE_SECRET_KEY: ${STRIPE_SECRET_KEY} - # NEXT_PUBLIC_STRIPE_PUBLIC_KEY: ${NEXT_PUBLIC_STRIPE_PUBLIC_KEY} - # STRIPE_LIMITED_KEY: ${STRIPE_LIMITED_KEY} - # STRIPE_WEBHOOK_SECRET: ${STRIPE_WEBHOOK_SECRET} - # FIC_CLIENT_ID: ${FIC_CLIENT_ID} - # FIC_ACCESS_TOKEN: ${FIC_ACCESS_TOKEN} - # FIC_COMPANY_ID: ${FIC_COMPANY_ID} - # ARUBA_USER: ${ARUBA_USER} - # ARUBA_PASS: ${ARUBA_PASS} - # EXP_API_USER: ${EXP_API_USER} - # EXP_API_PASS: ${EXP_API_PASS} - # JWT_SECRET: ${JWT_SECRET} - # networks: - # - dokploy-network - # ports: - # - "3000" - # depends_on: - # backend: - # condition: service_healthy - # db: - # condition: service_healthy - # keydb: - # condition: service_healthy - # tiles: - # condition: service_healthy + web: + build: + context: ./apps/infoalloggi + dockerfile: Dockerfile + args: + INTERNAL_BASE_URL: http://web:3000 + POSTGRES_USER: ${POSTGRES_USER} + POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} + POSTGRES_DB: ${POSTGRES_DB} + PGHOST: db + PGPORT: "5432" + BACKENDSERVER_URL: http://backend:1323 + TILES_URL: tiles:6379 + KEYDB_URL: keydb:6379 + BASE_URL: ${BASE_URL} + SENDGRID_API_KEY: ${SENDGRID_API_KEY} + STRIPE_SECRET_KEY: ${STRIPE_SECRET_KEY} + NEXT_PUBLIC_STRIPE_PUBLIC_KEY: ${NEXT_PUBLIC_STRIPE_PUBLIC_KEY} + STRIPE_LIMITED_KEY: ${STRIPE_LIMITED_KEY} + STRIPE_WEBHOOK_SECRET: ${STRIPE_WEBHOOK_SECRET} + FIC_CLIENT_ID: ${FIC_CLIENT_ID} + FIC_ACCESS_TOKEN: ${FIC_ACCESS_TOKEN} + FIC_COMPANY_ID: ${FIC_COMPANY_ID} + ARUBA_USER: ${ARUBA_USER} + ARUBA_PASS: ${ARUBA_PASS} + EXP_API_USER: ${EXP_API_USER} + EXP_API_PASS: ${EXP_API_PASS} + JWT_SECRET: ${JWT_SECRET} + working_dir: /app + environment: + INTERNAL_BASE_URL: http://web:3000 + POSTGRES_USER: ${POSTGRES_USER} + POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} + POSTGRES_DB: ${POSTGRES_DB} + PGHOST: db + PGPORT: "5432" + BACKENDSERVER_URL: http://backend:1323 + KEYDB_URL: keydb:6379 + TILES_URL: tiles:6379 + BASE_URL: ${BASE_URL} + SENDGRID_API_KEY: ${SENDGRID_API_KEY} + STRIPE_SECRET_KEY: ${STRIPE_SECRET_KEY} + NEXT_PUBLIC_STRIPE_PUBLIC_KEY: ${NEXT_PUBLIC_STRIPE_PUBLIC_KEY} + STRIPE_LIMITED_KEY: ${STRIPE_LIMITED_KEY} + STRIPE_WEBHOOK_SECRET: ${STRIPE_WEBHOOK_SECRET} + FIC_CLIENT_ID: ${FIC_CLIENT_ID} + FIC_ACCESS_TOKEN: ${FIC_ACCESS_TOKEN} + FIC_COMPANY_ID: ${FIC_COMPANY_ID} + ARUBA_USER: ${ARUBA_USER} + ARUBA_PASS: ${ARUBA_PASS} + EXP_API_USER: ${EXP_API_USER} + EXP_API_PASS: ${EXP_API_PASS} + JWT_SECRET: ${JWT_SECRET} + networks: + - dokploy-network + ports: + - "3000" + depends_on: + backend: + condition: service_healthy + db: + condition: service_healthy + keydb: + condition: service_healthy + tiles: + condition: service_healthy