0d149467e9
Deploy Polska Lokalnie / deploy (push) Successful in 5s
- realip: IP klienta z X-Real-IP ustawianego przez nginx hosta, zaufanie tylko z sieci prywatnych; limitowany jest wylacznie ruch przez nginx hosta. - Limity na IP: logowanie/hasla 10/min, akcje wysylajace mail/SMS 3/min, tlumaczenia 120/min, cale API 30/s; 429 jako JSON z komunikatem. - Wspolne ustawienia proxy w nginx/api-proxy.conf. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
20 lines
588 B
Docker
20 lines
588 B
Docker
FROM node:22-alpine AS frontend-build
|
|
WORKDIR /app
|
|
|
|
# Instalacja dokladnie wersji z package-lock.json - bez lockfile'a kazde wdrozenie moglo dociagnac
|
|
# inne (w tym podmienione) wersje zaleznosci.
|
|
COPY frontend/package.json frontend/package-lock.json ./
|
|
RUN npm ci
|
|
|
|
COPY frontend/ ./
|
|
RUN npm run build
|
|
|
|
FROM nginx:1.27-alpine
|
|
|
|
COPY nginx/default.conf /etc/nginx/conf.d/default.conf
|
|
COPY nginx/security-headers.conf /etc/nginx/snippets/security-headers.conf
|
|
COPY nginx/api-proxy.conf /etc/nginx/snippets/api-proxy.conf
|
|
COPY --from=frontend-build /app/dist /usr/share/nginx/html
|
|
|
|
EXPOSE 80
|