- Accueil
- Installer ONLYOFFICE Mail sur un serveur local à l'aide de Docker
Installer ONLYOFFICE Mail sur un serveur local à l'aide de Docker
Introduction
ONLYOFFICE Mail est une solution complète de serveur de messagerie développée sur la base du paquet iRedMail comportant les éléments suivants: Postfix, Dovecot, SpamAssassin, ClamAV, OpenDKIM, Fail2ban.
Intégré à ONLYOFFICE Workspace, ONLYOFFICE Mail vous permet de:
- connecter votre propre nom de domaine;
- créer des boîtes mail;
- ajouter des alias pour chaque boîte mail;
- créer des groupes de messagerie.
Ce guide vous explique comment installer la version Docker ONLYOFFICE Mail sur votre ordinateur.
Configuration système minimale
-
Processeur:double cœur à 2 GHz ou plus
-
Mémoire RAM4 Go ou plus
-
HDDau moins 20 Go d'espace disponible
-
SWAPau moins 4 Go, mais cela dépend du système d'exploitation hôte. Plus il y en a, mieux c'est
-
Système d'exploitationdistribution Linux amd64 avec noyau version 3.10 ou ultérieure
-
Exigences supplémentaires
- Docker: toute version prise en charge par l'équipe Docker
Avant de commencer l'installation
Avant d'installer ONLYOFFICE Mail, il faut lier votre ordinateur sur lequel vous allez installer ONLYOFFICE Mail au domaine du serveur de messagerie. Nous vous recommandons d'opter pour des noms de l'enregistrement A sur votre ordinateur du serveur de messagerie tels que mx.yourdomain.com. Cela veut dire que l'enregistrement A de votre système de nom de domaine (DNS) doit pointer vers l'adresse IP de l'ordinateur sur lequel ONLYOFFICE Mail sera installé, et l'enregistrement de pointeur (PTR) sur cet ordinateur doit résoudre l'adresse IP de l'ordinateur en un nom de domaine pleinement qualifié (FQDN) contrairement à un enregistrement A qui fait pointer un nom de domaine vers une adresse IP.
Pour vérifier l'exactitude des paramètres de l'enregistrement A, il faut utiliser la commande suivante:
dig -t A mx.yourdomain.com
Si les paramètres sont corrects, la sortie contiendra des lignes semblables aux suivantes:
...
;; ANSWER SECTION:
mx.yourdomain.com. IN A {your IP address}
...
L'adresse IP réelle du serveur s'affichera au lieu de {your IP address}.
L'enregistrement PTR est vérifié en utilisant une autre commande:
dig -x {your IP address}
La sortie renvoyée doit contenir, entre autres, des lignes semblables à celles-ci:
...
;; ANSWER SECTION:
{your IP address} IN PTR mx.yourdomain.com.
...
Une fois que vous vous êtes assuré que tous les paramètres sont corrects, vous pouvez passer aux étapes suivantes.
Installer ONLYOFFICE Mail à l'aide du script automatique
Pour installer ONLYOFFICE Mail automatiquement, utilisez le script Docker disponible sur la page de téléchargement ou via le lien direct ci-dessous:
wget https://download.onlyoffice.com/install/workspace-install.sh
Une fois le téléchargement terminé, exécutez la commande suivante pour installer ONLYOFFICE Mail:
bash workspace-install.sh -ics false -ids false -icp false -ims true -md yourdomain.com -es true
Installer ONLYOFFICE Mail manuellement
Pour garder un contrôle total sur l'installation, exécutez-la en mode manuel. Pour ce faire, suivez les étapes ci-dessous.
Installer des éléments prérequis
Il faut installer la dernière version de Docker. Si vous ne l'avez pas, veuillez consulter la section Installation sur le site Docker pour découvrir comment l'obtenir.
/etc/default/docker et remplacez l'adresse IP de la ligne suivante par l'adresse IP d'un serveur DNS de votre réseau local:
docker_OPTS="--dns 8.8.8.8"
Pour les systèmes d'exploitation basés sur RPM tels que CentOS:
- Créez le fichier de configuration
/etc/docker/daemon.jsoncomportant ce qui suit:{ "dns" : [ "8.8.8.8" ] } - Redémarrez le service Docker:
sudo systemctl restart docker.service
Avant de commencer l'installation, vous devez créer les dossiers suivants:
- Pour le serveur MySQL
sudo mkdir -p "/app/onlyoffice/mysql/conf.d"; sudo mkdir -p "/app/onlyoffice/mysql/data"; sudo mkdir -p "/app/onlyoffice/mysql/initdb"; - Pour les données et les journaux ONLYOFFICE Mail
sudo mkdir -p "/app/onlyoffice/MailServer/data/certs"; sudo mkdir -p "/app/onlyoffice/MailServer/logs";
Ensuite, créez le réseau onlyoffice:
sudo docker network create --driver bridge onlyoffice
Installer MySQL
Ensuite, créez le conteneur Docker du serveur MySQL. Créez le fichier de configuration:
echo "[mysqld]
sql_mode = 'NO_ENGINE_SUBSTITUTION'
max_connections = 1000
max_allowed_packet = 1048576000
group_concat_max_len = 2048" > /app/onlyoffice/mysql/conf.d/onlyoffice.cnf
Créez le script SQL pour générer des utilisateurs et attribuer des droits. Le onlyoffice_user est nécessaire pour ONLYOFFICE Serveur Communauté et le mail_admin est nécessaire pour ONLYOFFICE Mail, si vous prévoyez de l'installer:
echo "ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'my-secret-pw';
CREATE USER IF NOT EXISTS 'onlyoffice_user'@'%' IDENTIFIED WITH mysql_native_password BY 'onlyoffice_pass';
CREATE USER IF NOT EXISTS 'mail_admin'@'%' IDENTIFIED WITH mysql_native_password BY 'Isadmin123';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
GRANT ALL PRIVILEGES ON *.* TO 'onlyoffice_user'@'%';
GRANT ALL PRIVILEGES ON *.* TO 'mail_admin'@'%';
FLUSH PRIVILEGES;" > /app/onlyoffice/mysql/initdb/setup.sql
%). Si vous souhaitez restreindre l'accès, vous pouvez indiquer les hôtes qui auront accès au serveur SQL.Créez le conteneur MySQL, avec la version 8.0.29 de MySQL:
sudo docker run --net onlyoffice -i -t -d --restart=always --name onlyoffice-mysql-server \
-v /app/onlyoffice/mysql/conf.d:/etc/mysql/conf.d \
-v /app/onlyoffice/mysql/data:/var/lib/mysql \
-v /app/onlyoffice/mysql/initdb:/docker-entrypoint-initdb.d \
-e MYSQL_ROOT_PASSWORD=my-secret-pw \
-e MYSQL_DATABASE=onlyoffice \
mysql:8.0.29
CREATE USER 'mail_admin'@'localhost' IDENTIFIED BY 'Isadmin123';
GRANT ALL PRIVILEGES ON * . * TO 'mail_admin'@'%' IDENTIFIED BY 'Isadmin123';
FLUSH PRIVILEGES;
Installer ONLYOFFICE Mail
Une fois tous les prérequis en place, exécutez la commande suivante:
sudo docker run --init --net onlyoffice --privileged -i -t -d --restart=always --name onlyoffice-mail-server -p 25:25 -p 143:143 -p 587:587 -p 8081:8081 \
-e MYSQL_SERVER=onlyoffice-mysql-server \
-e MYSQL_SERVER_PORT=3306 \
-e MYSQL_ROOT_USER=root \
-e MYSQL_ROOT_PASSWD=my-secret-pw \
-e MYSQL_SERVER_DB_NAME=onlyoffice_mailserver \
-v /app/onlyoffice/MailServer/data:/var/vmail \
-v /app/onlyoffice/MailServer/data/certs:/etc/pki/tls/mailserver \
-v /app/onlyoffice/MailServer/logs:/var/log \
-h yourdomain.com \
onlyoffice/mailserver
Où yourdomain.com est le nom d'hôte de votre serveur de messagerie.
Dans la commande ci-dessus, le paramètre
"yourdomain.com" doit être considéré comme le domaine de service pour ONLYOFFICE Mail. Ce paramètre est généralement indiqué dans l'enregistrement MX du domaine qui sera utilisé pour assurer la correspondance. En règle générale, "yourdomain.com" apparaît comme mx1.onlyoffice.comDans cette configuration, le serveur de messagerie distribuera le courrier aux adresses internes hébergées sur ce serveur.
Stocker des données en dehors du conteneur
Toutes les données sont stockées dans des répertoires dédiés, appelés volumes de données, à l'emplacement suivant:
/var/logpour l'historique d'ONLYOFFICE Mail/var/lib/mysqlpour les données de la base de données MySQL/var/vmailpour le stockage du courrier/etc/pki/tls/mailserverpour les certificats
Pour accéder à vos données situées en dehors du conteneur, vous devez monter les volumes. Pour ce faire, spécifiez l'option -v dans la commande docker run.
sudo docker run --privileged -i -t -d -p 25:25 -p 143:143 -p 587:587 -p 8081:8081 \
-v /app/onlyoffice/MailServer/logs:/var/log \
-v /app/onlyoffice/MailServer/mysql:/var/lib/mysql \
-v /app/onlyoffice/MailServer/data:/var/vmail \
-v /app/onlyoffice/MailServer/data/certs:/etc/pki/tls/mailserver -h yourdomain.com onlyoffice/mailserver
Le stockage des données sur la machine hôte vous permet de mettre à jour facilement ONLYOFFICE Mail dès qu'une nouvelle version est disponible, sans perdre vos données.
Configurer l'image Docker
Pour assurer la livraison des messages aux adresses internes et aux adresses sur serveurs externes, il faut obtenir votre propre nom de domaine et configurer un serveur DNS.
Les enregistrements DNS nécessaires:
- L'enregistrement A (utilisé pour pointer un domaine vers l'adresse IP de l'hôte sur lequel cette image docker est déployée).
- L'enregistrement de pointeur (PTR) ou enregistrement DNS inverse (utilisé pour associer une interface réseau (IP) à un nom d'hôte).
sudo docker run --privileged -i -t -d -p 25:25 -p 143:143 -p 587:587 \
-v /app/onlyoffice/MailServer/data/certs:/etc/pki/tls/mailserver -h yourdomain.com onlyoffice/mailserver
Où yourdomain.com est le nom d'hôte de votre serveur de messagerie.
Installer des certificats SSL
Par défaut, des certificats auto-signés seront créés pour votre domaine lors de l'exécution du conteneur Docker. Si vous souhaitez utiliser les certificats SSL émis par une autorité de certification, vous devez les renommer et les copier dans le répertoire /app/onlyoffice/MailServer/data/certs avant d'exécuter l'image. Les fichiers suivants sont requis:
- /app/onlyoffice/MailServer/data/certs/mail.onlyoffice.key
- /app/onlyoffice/MailServer/data/certs/mail.onlyoffice.crt
- /app/onlyoffice/MailServer/data/certs/mail.onlyoffice.ca-bundle
Vous pouvez copier les certificats SSL dans le répertoire /app/onlyoffice/MailServer/data/certs après l'exécution de l'image. Mais dans ce cas, vous devrez redémarrer le conteneur Docker.
Paramètres de configuration disponibles
`--env-file`, qui vous permet de spécifier toutes les variables d'environnement requises dans un seul fichier. Cela vous évitera d'écrire une commande docker run potentiellement longue.Vous trouverez ci-dessous la liste complète des paramètres pouvant être définis à l'aide des variables d'environnement.
- STORAGE_BASE_DIR: Le chemin vers le stockage de messagerie. La valeur par défaut est
/var/vmail. - FIRST_DOMAIN: Le premier domaine virtuel, où l'adresse postmaster sera hébergée. Ce domaine ne doit pas coïncider avec le domaine principal du serveur de messagerie. La valeur par défaut est
mailserver.onlyoffice.com. - DOMAIN_ADMIN_PASSWD: Le mot de passe de postmaster. Par défaut, l'adresse postmaster est
postmaster@mailserver.onlyoffice.com.
Installer ONLYOFFICE Mail intégré à ONLYOFFICE Docs
ONLYOFFICE Mail fait partie d'ONLYOFFICE Workspace comportant aussi ONLYOFFICE Docs, le Panneau de configuration ONLYOFFICE et ONLYOFFICE Serveur Communauté. Si vous souhaitez installer tous les applications et les connecter entre elles, veuillez consulter ces instructions.
Méthodes alternatives d'installation de ONLYOFFICE Mail
Vous pouvez également utiliser un script d'installation automatique pour installer Workspace complet à la fois. Il faut spécifier le nom d'hôte yourdomain.com pour le bon fonctionnement du serveur de messagerie.
ÉTAPE 1: Télécharger le fichier du script d'installation
Exécutez la commande suivante:
wget https://download.onlyoffice.com/install/workspace-install.sh
ÉTAPE 2: Installer Workspace
Pour ce faire, exécutez la commande suivante:
bash workspace-install.sh -md yourdomain.com