Make omsorgapp's backend URL runtime-configurable, use dedicated API subdomain
Docker-Images bauen und veröffentlichen / build (, omsorgCore/Dockerfile, omsorgcore) (push) Successful in 3s
Docker-Images bauen und veröffentlichen / build (, omsorgWeb/Dockerfile, omsorgweb) (push) Successful in 3s
Docker-Images bauen und veröffentlichen / build (, omsorgapp/Dockerfile, omsorgapp) (push) Successful in 3s

- omsorgapp now reads the omsorgCore URL from a runtime env-config.js
  generated by the container entrypoint from OMSORG_CORE_URL, instead of
  only baking it in at image build time - docker-compose.yml pulls
  pre-built images from the registry, so a build-time-only value couldn't
  be changed without a rebuild.
- docker-compose.yml: omsorgCore gets its own subdomain
  (core.omsorg-pflegedienste.de) rather than being proxied under the
  frontend's domain - omsorgWeb never needs browser-side access to it
  anyway (server-side cURL only), and a dedicated API host is more
  future-proof without being any less secure (backend still only bound to
  127.0.0.1). Includes the nginx server-block snippet needed for the new
  subdomain.
- Drop the now-unused OMSORG_CORE_PUBLIC_URL build-arg wiring from the
  Gitea Actions workflow.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Felix Kemmler
2026-08-10 18:14:32 +02:00
co-authored by Claude Sonnet 5
parent 2a05c791f5
commit dcc8ea1510
7 changed files with 72 additions and 16 deletions
+7 -3
View File
@@ -13,9 +13,10 @@ RUN npm ci
COPY omsorgapp/ .
# Vite bäckt import.meta.env.VITE_OMSORG_CORE_URL (src/api/config.js) zur Build-Zeit ein - kein
# Runtime-Wert. Default passt zum docker-compose.yml-Setup, für einen echten Deploy überschreibt
# CI das per --build-arg mit der öffentlich erreichbaren omsorgCore-URL.
# Fallback für lokale/CI-Builds ohne Container (npm run dev/build) - im Container selbst
# entscheidet ausschließlich die Laufzeit-Env-Var OMSORG_CORE_URL (siehe docker-entrypoint.sh),
# da dieses Image aus der Registry gezogen und per docker-compose.yml konfiguriert wird, nicht
# pro Zielumgebung neu gebaut (siehe src/api/config.js).
ARG VITE_OMSORG_CORE_URL=http://localhost:8080
ENV VITE_OMSORG_CORE_URL=$VITE_OMSORG_CORE_URL
RUN npm run build
@@ -23,4 +24,7 @@ RUN npm run build
FROM nginx:1.27-alpine AS runtime
COPY --from=build /app/dist /usr/share/nginx/html
COPY omsorgapp/nginx.conf /etc/nginx/conf.d/default.conf
COPY omsorgapp/docker-entrypoint.sh /docker-entrypoint.sh
RUN chmod +x /docker-entrypoint.sh
EXPOSE 80
ENTRYPOINT ["/docker-entrypoint.sh"]