quality / commitlint (push) Skipped
quality / changes (push) Successful in 20s
quality / docker-check (push) Skipped
quality / openapi (push) Successful in 2m54s
quality / web (push) Successful in 1m22s
quality / go (push) Successful in 3m37s
quality / bird2 (push) Successful in 15s
CD / quality (push) Successful in 8m37s
CD / publish (push) Failing after 1m51s
- Added `@redocly/cli` version 1.34.5 to `package.json` and `pnpm-lock.yaml` for OpenAPI linting. - Updated CI workflows to reflect changes in job names and processes, including adjustments to the `publish` job in the CD workflow. - Enhanced documentation to clarify the new CI/CD processes and Docker build configurations.
30 lines
1.3 KiB
Docker
30 lines
1.3 KiB
Docker
# syntax=docker/dockerfile:1.7
|
|
# React + Vite статическая панель EvoBGP + nginx.
|
|
# Финальный stage `web` ожидает bake-контекст web-artifacts (= target:web-build).
|
|
ARG BASE_NODE=public.ecr.aws/docker/library/node:22-alpine
|
|
ARG BASE_NGINX=public.ecr.aws/docker/library/nginx:1.27-alpine
|
|
|
|
FROM ${BASE_NODE} AS deps
|
|
WORKDIR /repo
|
|
RUN corepack enable && corepack prepare pnpm@10.33.2 --activate
|
|
COPY pnpm-workspace.yaml pnpm-lock.yaml package.json ./
|
|
COPY apps/web/package.json ./apps/web/
|
|
COPY packages/ui/package.json ./packages/ui/
|
|
RUN --mount=type=cache,target=/root/.local/share/pnpm/store,sharing=locked \
|
|
pnpm install --frozen-lockfile
|
|
|
|
FROM deps AS build
|
|
COPY tsconfig.base.json ./
|
|
COPY apps/web/ ./apps/web/
|
|
COPY packages/ui/ ./packages/ui/
|
|
RUN --mount=type=cache,target=/root/.local/share/pnpm/store,sharing=locked \
|
|
pnpm --filter @evobgp/web run build
|
|
|
|
FROM ${BASE_NGINX} AS web
|
|
ARG EVOBGP_UPSTREAM=evobgp-api
|
|
COPY deploy/docker/evobgp-web/nginx.conf /tmp/nginx-default.conf
|
|
RUN sed -e "s/evobgp-api/${EVOBGP_UPSTREAM}/g" /tmp/nginx-default.conf > /etc/nginx/conf.d/default.conf \
|
|
&& rm -f /tmp/nginx-default.conf \
|
|
&& sed -i 's/^[[:space:]]*worker_processes[[:space:]]*auto;/worker_processes 1;/' /etc/nginx/nginx.conf
|
|
COPY --from=web-artifacts /repo/apps/web/dist /usr/share/nginx/html
|