From e4af8ad7d4eb7907ac3524fea106e5985e8971e7 Mon Sep 17 00:00:00 2001 From: Antoine Barbare <abarbare@etu.utc.fr> Date: Mon, 17 Dec 2018 19:52:10 +0100 Subject: [PATCH] fix: refactor dockerfile --- pica-mail-mda/auth_LDAP/Dockerfile | 16 +++++++++------- pica-mail-mda/auth_LDAP/entrypoint.sh | 14 -------------- .../auth_LDAP/fichiers_de_configuration.sh | 8 +++----- 3 files changed, 12 insertions(+), 26 deletions(-) delete mode 100755 pica-mail-mda/auth_LDAP/entrypoint.sh diff --git a/pica-mail-mda/auth_LDAP/Dockerfile b/pica-mail-mda/auth_LDAP/Dockerfile index a6938d71..fb25482e 100644 --- a/pica-mail-mda/auth_LDAP/Dockerfile +++ b/pica-mail-mda/auth_LDAP/Dockerfile @@ -1,17 +1,19 @@ #Dockerfile pour le MDA de Picasoft -#actuellement basé sur dovecot From debian #lors de l'installation de dovecot, par défaut, il y a des "fenêtres dans la console", ceci les désactive et utilise des réponses par défaut ENV DEBIAN_FRONTEND noninteractive +COPY fichiers_de_configuration.sh / + #installation des paquets debian RUN apt-get update -y \ && apt-get install -y \ - dovecot-common dovecot-imapd dovecot-lmtpd dovecot-ldap nano telnet htop \ - && rm -rf /var/lib/apt/lists/* - -COPY entrypoint.sh / -COPY fichiers_de_configuration.sh / + dovecot-common dovecot-imapd dovecot-lmtpd dovecot-ldap \ + && rm -rf /var/lib/apt/lists/* \ + && addgroup --gid 1000 vmail \ + && adduser --system --disabled-login --no-create-home --ingroup vmail --uid 500 vmail \ + # Prévoir de lire des param de conf via variable d'environnement et passer en entrypoint + && bash /fichiers_de_configuration.sh -ENTRYPOINT ["/entrypoint.sh"] +CMD ["dovecot", "-F"] diff --git a/pica-mail-mda/auth_LDAP/entrypoint.sh b/pica-mail-mda/auth_LDAP/entrypoint.sh deleted file mode 100755 index 8a6daeff..00000000 --- a/pica-mail-mda/auth_LDAP/entrypoint.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/bash - -chmod u+x fichiers_de_configuration.sh -./fichiers_de_configuration.sh - -# Ajouter utilisateur et groupe vmail (utilisateur système qui permet aux utilisateurs dits "virtuels" (en fait LDAP) d'accéder à leur BAL) -addgroup --gid 1000 vmail -adduser --system --disabled-login --home /home/vmail --no-create-home --ingroup vmail --uid 500 vmail - -#lancer dovecot -dovecot -F - -# affichage des logs -tail -F /var/log/dovecot.log diff --git a/pica-mail-mda/auth_LDAP/fichiers_de_configuration.sh b/pica-mail-mda/auth_LDAP/fichiers_de_configuration.sh index 9c0bb000..cc59a998 100644 --- a/pica-mail-mda/auth_LDAP/fichiers_de_configuration.sh +++ b/pica-mail-mda/auth_LDAP/fichiers_de_configuration.sh @@ -16,8 +16,6 @@ ### Définition des variables d'environnement. -# Récupération de l'adresse IP avec laquelle le conteneur communique avec son hôte -ETH0_ADRESS=$(ip address show eth0 | grep inet | cut -b 10-19) # LDAP LDAP_ADRESS=ldap.test.picasoft.net LDAP_NSS_CN=nss @@ -63,8 +61,8 @@ sed -i 's/^#!include auth-ldap\.conf\.ext.*/!include auth-ldap.conf.ext/' /etc/d #sed -i 's/^# = .*//' /etc/dovecot/conf.d/10-auth.conf ### modification de /etc/dovecot/conf.d/10-logging.conf -# Définition d'un chemin spécifique pour les logs de Dovecot (/var/log/dovecot.log) -sed -i 's/^#log_path = .*/log_path = \/var\/log\/dovecot.log/' /etc/dovecot/conf.d/10-logging.conf +# Redirection des logs vers stdout +sed -i 's/^#log_path = .*/log_path = \/dev\/stdout/' /etc/dovecot/conf.d/10-logging.conf #sed -i 's/^# = .*//' /etc/dovecot/conf.d/10-logging.conf ### Modification de /etc/dovecot/conf.d/10-mail.conf @@ -87,7 +85,7 @@ sed -i 's/^ #mode = .*/# #mode = 0666/' /etc/dovecot/conf.d/10-master.conf sed -i '51s/^ }.*/ #}/' /etc/dovecot/conf.d/10-master.conf # Définition de la connexion LMTP par paquets IP sed -i 's/^ #inet_listener lmtp {.*/ inet_listener lmtp {/' /etc/dovecot/conf.d/10-master.conf -sed -i '56s/^ #address =.*/ address = '"${ETH0_ADRESS}"' 127.0.0.1/' /etc/dovecot/conf.d/10-master.conf +sed -i '56s/^ #address =.*/ address = 0.0.0.0/' /etc/dovecot/conf.d/10-master.conf sed -i '57s/^ #port =.*/ port = 24/' /etc/dovecot/conf.d/10-master.conf sed -i '58s/^ #}.*/ }/' /etc/dovecot/conf.d/10-master.conf # Spécification des protocoles utilisés -- GitLab