FROM docker.iranserver.com/node:20 WORKDIR /app COPY package.json package-lock.json ./ COPY scripts ./scripts RUN npm config set registry https://mirror2.chabokan.net/npm/ \ && npm config set replace-registry-host npmjs \ && npm config set fetch-retry-mintimeout 10000 \ && npm config set fetch-retry-maxtimeout 120000 \ && npm config set fetch-timeout 120000 \ && npm config set fetch-retries 5 ENV NODE_ENV=development RUN npm ci --include=dev --foreground-scripts --registry=https://mirror2.chabokan.net/npm/ COPY . . # نام‌ها باید با Environment و Build-time Arguments در Dokploy یکی باشند ARG VITE_SUBSCRIPTION_URL ARG VITE_BASE_PATH ARG VITE_DEV_DOMAIN ARG VITE_PLATFORM_DOMAIN ARG VITE_TENANT_DOMAIN ARG VITE_NODE_BASE_URL ARG VITE_TENANT_NODE_URL ARG VITE_TENANT_SUPA_URL ARG NUXT_PUBLIC_SUBSCRIPTION_URL ARG NUXT_PUBLIC_NODE_BASE_URL RUN node scripts/write-docker-vite-env.mjs \ && unset VITE_SUBSCRIPTION_URL VITE_BASE_PATH VITE_DEV_DOMAIN VITE_PLATFORM_DOMAIN VITE_TENANT_DOMAIN VITE_NODE_BASE_URL VITE_TENANT_NODE_URL VITE_TENANT_SUPA_URL NUXT_PUBLIC_SUBSCRIPTION_URL NUXT_PUBLIC_NODE_BASE_URL \ && npm run build ENV NODE_ENV=production ENV VITE_BASE_PATH=/admin/ ENV PORT=7676 COPY entrypoint.sh /entrypoint.sh RUN chmod +x /entrypoint.sh EXPOSE 7676 ENTRYPOINT ["/entrypoint.sh"] CMD ["node", "scripts/serve-admin.mjs"]