prepare intranet for first Dokploy deployment

This commit is contained in:
2026-08-26 12:59:51 +02:00
parent 5cfe688bdc
commit 29dfb85fef
1321 changed files with 227234 additions and 0 deletions
+55
View File
@@ -0,0 +1,55 @@
FROM php:8.3.33-apache-bookworm
ENV TZ=Europe/Berlin \
PLAYWRIGHT_BROWSERS_PATH=/ms-playwright \
PATH=/opt/intranet-venv/bin:$PATH
RUN apt-get update && apt-get install -y --no-install-recommends \
locales tzdata \
python3 python3-venv \
openssh-client ghostscript poppler-utils pngquant \
libpq-dev libzip-dev \
libpng-dev libjpeg62-turbo-dev libfreetype6-dev \
&& echo 'de_DE.UTF-8 UTF-8' > /etc/locale.gen \
&& locale-gen \
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
&& docker-php-ext-install -j"$(nproc)" pdo_pgsql pgsql zip gd \
&& php -r '$r=["pdo_pgsql","pgsql","curl","mbstring","dom","SimpleXML","xml","xmlreader","xmlwriter","zip","gd","Zend OPcache"]; foreach($r as $e){if(!extension_loaded($e)){fwrite(STDERR,"missing PHP ext: $e\n"); exit(1);}}' \
&& python3 -m venv /opt/intranet-venv \
&& /opt/intranet-venv/bin/pip install --no-cache-dir --upgrade pip \
&& /opt/intranet-venv/bin/pip install --no-cache-dir \
beautifulsoup4==4.13.4 fpdf==1.7.2 requests==2.32.4 playwright==1.62.0 \
&& /opt/intranet-venv/bin/python -m playwright install --with-deps chromium \
&& chmod -R a+rX /ms-playwright \
&& rm -rf /var/lib/apt/lists/*
ENV LANG=de_DE.UTF-8 \
LC_ALL=de_DE.UTF-8
COPY docker/intranet.ini /usr/local/etc/php/conf.d/99-intranet.ini
COPY web/ /var/www/html/
COPY worker/ /opt/intranet/worker/
COPY docker/scheduler.py /opt/intranet/docker/scheduler.py
RUN mkdir -p \
/data/ckal-xlsx /data/pdf /data/state \
/var/www/html/intranet_repo/general_files/profile_pictures \
/var/www/html/intranet_repo/projects/contentpanel/insertion/news \
/var/www/html/intranet_repo/projects/developerpanel/work \
/var/www/html/intranet_repo/projects/seelsorge/data \
/var/www/html/intranet_repo/projects/dashboard/month \
&& chown -R www-data:www-data \
/data \
/var/www/html/intranet_repo/general_files/profile_pictures \
/var/www/html/intranet_repo/projects/contentpanel/insertion/news \
/var/www/html/intranet_repo/projects/developerpanel/work \
/var/www/html/intranet_repo/projects/seelsorge/data \
/var/www/html/intranet_repo/projects/dashboard/month \
&& chmod +x /opt/intranet/docker/scheduler.py /opt/intranet/worker/pdf_python/pdf_to_png.sh
EXPOSE 80
HEALTHCHECK --interval=30s --timeout=5s --start-period=20s --retries=3 \
CMD curl -fsS http://127.0.0.1/ >/dev/null || exit 1
CMD ["apache2-foreground"]