Initial commit: TopSysOps site + admin panel
Multi-page public site (Next.js), Node/Express backend with Postgres, and Vite admin/account app, restructured from a single-page layout into dedicated service, promotions, cases, about, FAQ, and blog pages for SEO. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013otXCiTZsxdZ4SJKZ9wUky
This commit is contained in:
commit
130c5382cd
108 files changed
+7146
No files matched your search
@@ -0,0 +1,41 @@
|
||||
FROM node:20-alpine AS build
|
||||
|
||||
WORKDIR /app
|
||||
COPY package.json package-lock.json* ./
|
||||
RUN npm install
|
||||
|
||||
COPY . .
|
||||
|
||||
# NEXT_PUBLIC_* переменные встраиваются в клиентский бандл на этапе сборки.
|
||||
ARG NEXT_PUBLIC_SITE_URL=https://top-sysops.ru
|
||||
ARG NEXT_PUBLIC_CHAT_PROVIDER=none
|
||||
ARG NEXT_PUBLIC_TOPTICKET_WIDGET_URL=
|
||||
ARG NEXT_PUBLIC_TOPTICKET_WIDGET_KEY=
|
||||
ARG NEXT_PUBLIC_CHATWOOT_BASE_URL=
|
||||
ARG NEXT_PUBLIC_CHATWOOT_WEBSITE_TOKEN=
|
||||
ENV NEXT_PUBLIC_SITE_URL=$NEXT_PUBLIC_SITE_URL \
|
||||
NEXT_PUBLIC_CHAT_PROVIDER=$NEXT_PUBLIC_CHAT_PROVIDER \
|
||||
NEXT_PUBLIC_TOPTICKET_WIDGET_URL=$NEXT_PUBLIC_TOPTICKET_WIDGET_URL \
|
||||
NEXT_PUBLIC_TOPTICKET_WIDGET_KEY=$NEXT_PUBLIC_TOPTICKET_WIDGET_KEY \
|
||||
NEXT_PUBLIC_CHATWOOT_BASE_URL=$NEXT_PUBLIC_CHATWOOT_BASE_URL \
|
||||
NEXT_PUBLIC_CHATWOOT_WEBSITE_TOKEN=$NEXT_PUBLIC_CHATWOOT_WEBSITE_TOKEN
|
||||
|
||||
# BACKEND_INTERNAL_URL нужен и на этапе сборки (генерация sitemap исполняется
|
||||
# как серверный код) - но реальные данные для sitemap читаются уже в рантайме,
|
||||
# на сборку это не влияет, если бэкенд на этот момент недоступен.
|
||||
ENV NEXT_TELEMETRY_DISABLED=1
|
||||
|
||||
RUN npm run build
|
||||
|
||||
FROM node:20-alpine AS run
|
||||
|
||||
WORKDIR /app
|
||||
ENV NODE_ENV=production
|
||||
ENV NEXT_TELEMETRY_DISABLED=1
|
||||
|
||||
COPY --from=build /app/public ./public
|
||||
COPY --from=build /app/.next/standalone ./
|
||||
COPY --from=build /app/.next/static ./.next/static
|
||||
|
||||
EXPOSE 3000
|
||||
CMD ["node", "server.js"]
|
||||
Reference in new issue
Block a user