Files
ldap-identidy/Dockerfile
Bastian Wagner 0fd85573d2 docker
2026-07-15 14:31:56 +02:00

35 lines
958 B
Docker

FROM node:22-alpine AS deps
WORKDIR /app
COPY package*.json ./
COPY apps/api/package.json apps/api/package.json
COPY apps/web/package.json apps/web/package.json
RUN npm ci
FROM deps AS build
COPY tsconfig.base.json ./
COPY eslint.config.mjs ./
COPY apps/api apps/api
COPY apps/web apps/web
RUN npm run build
FROM node:22-alpine AS runtime
WORKDIR /app
ENV NODE_ENV=production
ENV API_PORT=3000
ENV WEB_PORT=8080
ENV API_BASE_URL=http://localhost:3000
RUN apk add --no-cache nginx
COPY --from=deps /app/node_modules node_modules
COPY --from=build /app/apps/api/dist api
COPY --from=build /app/apps/web/dist/web/browser /usr/share/nginx/html
COPY apps/api/package.json package.json
COPY docker/single-container.nginx.conf /etc/nginx/http.d/default.conf
COPY docker/start-single-container.sh /usr/local/bin/start-ldap-portal
RUN chmod +x /usr/local/bin/start-ldap-portal \
&& mkdir -p /run/nginx /var/log/nginx
EXPOSE 3000 8080
CMD ["start-ldap-portal"]