Migrate omsorgapp to browser SPA, add Docker/CI build setup
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) Failing after 4s
Docker-Images bauen und veröffentlichen / build (VITE_OMSORG_CORE_URL=${{ vars.OMSORG_CORE_PUBLIC_URL }}, omsorgapp/Dockerfile, omsorgapp) (push) Successful in 3s

- omsorgapp: drop Electron, run as a plain Vite/React browser app; refresh
  token moves to an HttpOnly cookie (omsorgCore), CORS added for the new
  browser origin, document download/preview switched to Blob-based browser
  APIs.
- Add Dockerfiles for omsorgCore, omsorgapp, and omsorgWeb, a docker-compose.yml
  wiring Postgres/MySQL/all three apps together, and a Gitea Actions workflow
  that builds and pushes images to the repo's container registry on push to
  main and on version tags.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Felix Kemmler
2026-08-10 17:42:45 +02:00
co-authored by Claude Sonnet 5
parent e9e96a57dc
commit 598dfcd38a
461 changed files with 59753 additions and 2859 deletions
+32
View File
@@ -0,0 +1,32 @@
# Build-Kontext ist der Repo-Root (siehe .gitea/workflows/docker-build.yml und docker-compose.yml) -
# nötig, um zusätzlich zu omsorgWeb/ auch die Root-.htaccess (liegt bewusst außerhalb von
# omsorgWeb/, siehe README.txt "upload directory contents to htdocs") mit ins Image zu kopieren.
FROM php:8.2-apache
RUN apt-get update \
&& apt-get install -y --no-install-recommends libcurl4-openssl-dev libonig-dev \
&& docker-php-ext-install pdo_mysql mbstring curl \
&& a2enmod rewrite headers \
&& rm -rf /var/lib/apt/lists/*
# Debians Standard-apache2.conf setzt AllowOverride None für /var/www/ - ohne dieses Drop-in
# würden alle .htaccess-Regeln der App stillschweigend ignoriert (siehe Datei-Kommentar).
COPY omsorgWeb/docker/allow-htaccess.conf /etc/apache2/conf-available/allow-htaccess.conf
RUN a2enconf allow-htaccess
COPY omsorgWeb/ /var/www/html/
COPY .htaccess /var/www/html/.htaccess
RUN chmod +x /var/www/html/docker/docker-entrypoint.sh \
# Schreibbare Verzeichnisse für Datei-Uploads zur Laufzeit (siehe docker-compose.yml-Volumes) -
# Besitzer auf den Apache-User setzen, damit PHP dort schreiben kann.
&& chown -R www-data:www-data \
/var/www/html/mitarbeiter-app-legacy/uploads \
/var/www/html/mitarbeiter-app-legacy/downloads \
/var/www/html/mitarbeiter-app-legacy/fortbildung-materials \
/var/www/html/mitarbeiter-app-legacy/assets/avatars \
/var/www/html/mitarbeiter-app-legacy/data
EXPOSE 80
ENTRYPOINT ["/var/www/html/docker/docker-entrypoint.sh"]