diff --git a/README.md b/README.md new file mode 100644 index 0000000..cc389a5 --- /dev/null +++ b/README.md @@ -0,0 +1,24 @@ +# mail server + +Папки: + + config — ключи DKIM и прочие конфиги от сервера. + data — сами письма, базы антивируса и антиспама. + ssl — сертификаты (если будете использовать свои). + + mkdir -p ~/docker-mailserver/{config,data,ssl} + cd ~/docker-mailserver + +## clone + +## up + + docker compose up -d + +## create user + + docker exec -it mailserver setup email add user@example.com ваш_пароль + +## settings + + docker exec -it mailserver setup config dkim diff --git a/docker-compose.yml b/docker-compose.yml index dc0269a..a226e2f 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -1,34 +1,26 @@ -version: '3.8' +version: "3.8" services: - chasquid: - image: registry.gitlab.com/albertito/chasquid:main - container_name: chasquid-mail-server - restart: unless-stopped - - # Проброс портов для доступа к почтовому серверу + mailserver: + image: docker.io/docker-mailserver/docker-mailserver:release-latest + container_name: mailserver + hostname: mail + domainname: crabs-games.art + env_file: mailserver.env ports: - - "25:25" # SMTP (входящая почта от других серверов) - - "80:80" - - "587:587" # Submission (для отправки почты клиентами с STARTTLS) - - "465:465" # Submission over TLS (для отправки почты клиентами) - - "993:993" # IMAPS (для получения почты клиентами) - - "995:995" # POP3S (для получения почты клиентами, опционально) - # - "143:143" # IMAP (без шифрования, обычно не рекомендуется) - # - "110:110" # POP3 (без шифрования, обычно не рекомендуется) - - environment: - # Укажите домен(ы), для которых нужно получить сертификат Let's Encrypt - - AUTO_CERTS=mail.crabs-games.art - # Укажите email для уведомлений Let's Encrypt - - CERTS_MAIL=admin@crabs-games.art - + - "25:25" + - "587:587" + - "465:465" + - "110:110" + - "995:995" + - "143:143" + - "993:993" volumes: - # Том для хранения почтовых ящиков, баз данных пользователей и сертификатов - - chasquid-data:/data - - ./config/domains:/data/chasquid/domains # Примонтируем конфигурацию доменов - - ./config:/data/chasquid/config # Дополнительные настройки -volumes: - chasquid-data: - name: chasquid-data - + - ./data:/var/mail + - ./config:/tmp/docker-mailserver + # Если есть свои сертификаты: + # - ./ssl/fullchain.pem:/etc/ssl/certs/ssl-cert-snakeoil.pem:ro + # - ./ssl/privkey.pem:/etc/ssl/private/ssl-cert-snakeoil.key:ro + cap_add: + - NET_ADMIN + restart: always diff --git a/mailserver.env b/mailserver.env new file mode 100644 index 0000000..3d84353 --- /dev/null +++ b/mailserver.env @@ -0,0 +1,9 @@ +HOSTNAME=mail +DOMAINNAME=crabs-games.art +POSTMASTER_ADDRESS=admin@crabs-games.art +TZ=Europe/Moscow +ENABLE_SPAMASSASSIN=0 +ENABLE_CLAMAV=1 +ENABLE_FAIL2BAN=1 +ONE_DIR=1 +DMS_DEBUG=0