Homeما هو Docker Mailserver؟Blogما هو Docker Mailserver؟

ما هو Docker Mailserver؟

Docker Mailserver هو خادم بريد إلكتروني بسيط ولكنه قوي، مصمم للإنتاج (Production-ready) ويحتوي على كل ما تحتاجه لتشغيل خدمة بريد متكاملة، مثل:

  • بروتوكولات SMTP وIMAP

  • دعم LDAP

  • حماية من الرسائل المزعجة (Antispam)

  • مكافح فيروسات (Antivirus)

كل الإعدادات تتم من خلال ملفات تكوين فقط، بدون استخدام قاعدة بيانات SQL. يركز هذا المشروع على البساطة، وسهولة التحديث، وقابلية التتبع عبر التحكم في الإصدارات (version control).

💡 المصدر الرسمي: https://github.com/docker-mailserver/docker-mailserver


خطوات تثبيت Docker على Linux

لبدء استخدام Docker Mailserver، تحتاج أولاً إلى تثبيت Docker على الخادم الخاص بك. اتبع الخطوات التالية:

1. تحديث مستودعات البرامج

bash
sudo apt update

2. تثبيت المتطلبات الأساسية

bash
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg-agent -y

3. إضافة مفتاح GPG الخاص بـ Docker

bash
curl -fsSL https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release)/gpg | sudo apt-key add -

4. إضافة مستودع Docker

bash
sudo add-apt-repository "deb [arch=$(dpkg --print-architecture)] https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release) $(lsb_release -cs) stable"

5. تثبيت Docker

bash
sudo apt install docker-ce docker-compose containerd.io -y

6. تشغيل خدمة Docker تلقائيًا

bash
sudo systemctl enable docker && sudo systemctl start docker

7. إضافة المستخدم الحالي إلى مجموعة Docker

bash
sudo usermod -aG docker $USER
su - $USER

تشغيل حاوية Docker Mailserver

بعد تثبيت Docker، يمكنك الآن إنشاء حاوية (Container) لتشغيل خادم البريد:

1. إنشاء مجلدات العمل الخاصة بالخادم

bash
mkdir -p ~/docker/mailserver/{data,state,logs,config}

2. إعطاء صلاحيات المجلدات للمستخدم الحالي

bash
sudo chown "$USER":"$USER" ~/docker -R

3. تشغيل الحاوية الخاصة بخادم البريد

bash
docker run -d --name=mailserver \
--hostname="$HOSTNAME" \
--domainname="docker.local" \
-p 25:25 -p 143:143 -p 587:587 -p 993:993 \
-e ENABLE_SPAMASSASSIN=1 \
-e SPAMASSASSIN_SPAM_TO_INBOX=1 \
-e ENABLE_CLAMAV=1 \
-e ENABLE_POSTGREY=1 \
-e ENABLE_FAIL2BAN=0 \
-e ENABLE_SASLAUTHD=0 \
-e ONE_DIR=1 \
-e TZ=America/New_York \
-v ~/docker/mailserver/data/:/var/mail/ \
-v ~/docker/mailserver/state/:/var/mail-state/ \
-v ~/docker/mailserver/logs/:/var/log/mail/ \
-v ~/docker/mailserver/config/:/tmp/docker-mailserver/ \
--restart=unless-stopped mailserver/docker-mailserver

إنشاء مستخدم بريد إلكتروني

يمكنك إضافة صندوق بريد إلكتروني باستخدام الأمر التالي:

bash
docker run --rm \
-e MAIL_USER=example@docker.local \
-e MAIL_PASS=supersecret \
-it mailserver/docker-mailserver \
/bin/sh -c 'echo "$MAIL_USER|$(doveadm pw -s SHA512-CRYPT -u $MAIL_USER -p $MAIL_PASS)"' >> ~/docker/mailserver/config/postfix-accounts.cf

لا تنسَ تغيير البريد الإلكتروني وكلمة السر حسب رغبتك.

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *