From 336fca61a3fb3e44cb3d6c199843402d286aa3a4 Mon Sep 17 00:00:00 2001
From: La sif serveur <david.beniamine@tetras-libre.fr>
Date: Fri, 22 Sep 2023 15:44:15 +0200
Subject: [PATCH] SIF configs for mail

---
 .env.sample          |  3 +++
 docker-compose.yml   |  3 +++
 docker/Dockerfile    |  8 +++++---
 docker/custom.ini    |  2 ++
 docker/entrypoint.sh | 14 ++++++++++++++
 sif.yml              | 22 ++++++++++++++++++++++
 6 files changed, 49 insertions(+), 3 deletions(-)
 create mode 100644 docker/custom.ini
 create mode 100644 sif.yml

diff --git a/.env.sample b/.env.sample
index 54d5e7a..f98f4c9 100644
--- a/.env.sample
+++ b/.env.sample
@@ -8,3 +8,6 @@ DB_DATABASE=wordpress
 DEBUG=0
 DB_PREFIX=wp_
 TZ=Europe/Paris
+REMOTES=postfix
+MAIL_DOMAIN=my.fqdn
+MAIL_FROM=user@my.fqdn
diff --git a/docker-compose.yml b/docker-compose.yml
index aea259b..33c8410 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -6,6 +6,9 @@ services:
         build: docker/
         restart: always
         environment:
+            REMOTES:
+            MAIL_DOMAIN:
+            MAIL_FROM:
             TZ: ${TZ}
             WORDPRESS_DB_HOST: db
             WORDPRESS_DB_USER: ${DB_USERNAME}
diff --git a/docker/Dockerfile b/docker/Dockerfile
index fb30257..c72825b 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -1,8 +1,10 @@
-FROM wordpress:php7.4
-RUN apt-get update && apt-get install -y libldap2-dev rsyslog
+FROM wordpress:latest
+ENV DEBIAN_FRONTEND noninteractive
+RUN apt-get update && apt-get install -y libldap2-dev rsyslog nullmailer
 #RUN docker-php-ext-install ldap
 RUN docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ && docker-php-ext-install ldap
-RUN sed -i 's@\(</VirtualHost>\)@Alias /bulletins-specif /var/www/bulletins-specif\n\1@' /etc/apache2/sites-available/000-default.conf
+#RUN sed -i 's@\(</VirtualHost>\)@Alias /bulletins-specif /var/www/bulletins-specif\n\1@' /etc/apache2/sites-available/000-default.conf
 COPY entrypoint.sh /entrypoint.sh
+COPY custom.ini $PHP_INI_DIR/conf.d/
 RUN chmod +x /entrypoint.sh
 ENTRYPOINT ["/entrypoint.sh"]
diff --git a/docker/custom.ini b/docker/custom.ini
new file mode 100644
index 0000000..94b4005
--- /dev/null
+++ b/docker/custom.ini
@@ -0,0 +1,2 @@
+upload_max_filesize=10M
+post_max_size=10M
diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh
index d1d50c2..d8679cf 100644
--- a/docker/entrypoint.sh
+++ b/docker/entrypoint.sh
@@ -1,5 +1,19 @@
 #!/bin/bash
 /etc/init.d/rsyslog start
+### Init nullmailer
+chown mail /var/spool/nullmailer
+[[ $(ls -A /var/spool/nullmailer | grep -v placeholder) ]] || cp -a /var/spool/nullmailer.orig/* /var/spool/nullmailer/
+if [ ! -p /var/spool/nullmailer/trigger ]; then
+  rm -f /var/spool/nullmailer/trigger
+  mkfifo /var/spool/nullmailer/trigger
+fi
+chown mail:root /var/spool/nullmailer/trigger
+chmod 0622 /var/spool/nullmailer/trigger
+echo "$REMOTES" > /etc/nullmailer/remotes
+echo "$MAIL_DOMAIN" > /etc/nullmailer/defaultdomain
+echo "sendmail_from='$MAIL_FROM'" >> $PHP_INI_DIR/conf.d/custom.ini
+/usr/sbin/nullmailer-send 2>&1 &
+
 mkdir -p /var/log/apache2
 chown -R 33:33 /var/log/apache2
 apache2ctl -DFOREGROUND
diff --git a/sif.yml b/sif.yml
new file mode 100644
index 0000000..505eb38
--- /dev/null
+++ b/sif.yml
@@ -0,0 +1,22 @@
+version: "3.0"
+
+services:
+
+    wordpress:
+      networks:
+        - default
+        - ldap
+        - traefik
+        - sympa_postfix
+      volumes:
+          - "${WP_PATH}:/var/www/html/"
+          - "./log:/var/log"
+
+
+networks:
+  traefik:
+    external: true
+  ldap:
+    external: true
+  sympa_postfix:
+    external: true
-- 
GitLab