2018-07-15 12:07:01 +08:00
|
|
|
# hub.docker.com/r/tiredofit/postal
|
|
|
|
|
|
|
|
# Introduction
|
|
|
|
|
|
|
|
Dockerfile to build a [Postal](https://github.com/atech/postal) SMTP server for sending and receiving SMTP / HTTP API email.
|
|
|
|
* This Container uses a [customized Alpine base](https://hub.docker.com/r/tiredofit/debian) which includes [s6
|
|
|
|
overlay](https://github.com/just-containers/s6-overlay) enabled for PID 1 Init capabilities, [zabbix-agent](https://zabbix.org) for
|
|
|
|
individual container monitoring, Cron also installed along with other tools (bash,curl, less, logrotate, nano, vim) for easier
|
|
|
|
management.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[Changelog](CHANGELOG.md)
|
|
|
|
|
|
|
|
# Authors
|
|
|
|
|
|
|
|
- [Dave Conroy](https://github.com/tiredofit/)
|
|
|
|
|
|
|
|
# Table of Contents
|
|
|
|
|
|
|
|
- [Introduction](#introduction)
|
|
|
|
- [Changelog](CHANGELOG.md)
|
|
|
|
- [Prerequisites](#prerequisites)
|
|
|
|
- [Installation](#installation)
|
|
|
|
- [Quick Start](#quick-start)
|
|
|
|
- [Configuration](#configuration)
|
|
|
|
- [Data Volumes](#data-volumes)
|
|
|
|
- [Environment Variables](#environmentvariables)
|
|
|
|
- [Maintenance](#maintenance)
|
|
|
|
- [Shell Access](#shell-access)
|
|
|
|
- [References](#references)
|
|
|
|
|
|
|
|
# Prerequisites
|
|
|
|
|
2018-07-15 12:08:45 +08:00
|
|
|
- [RabbitMQ Server](https://github.com/tiredofit/docker-rabbitmq)
|
|
|
|
- [MariaDB Server](https://github.com/tiredofit/docker-mariadb)
|
|
|
|
- [Spamassassin](https://github.com/tiredofit/docker-spamassassin) *optional*
|
|
|
|
- [Clam Antivirus](https://github.com/tiredofit/docker-clamav) *optional*
|
2018-07-15 12:07:01 +08:00
|
|
|
|
|
|
|
# Installation
|
|
|
|
|
2018-07-15 12:08:45 +08:00
|
|
|
Automated builds of the image are available on [Registry](https://hub.docker.com/r/tiredofit/postal) and is the recommended method of
|
2018-07-15 12:07:01 +08:00
|
|
|
installation.
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
docker pull hub.docker.com/tiredofit/postal:(imagetag)
|
|
|
|
```
|
|
|
|
|
|
|
|
The following image tags are available:
|
|
|
|
* `latest` - Most recent release of postal w/Alpine Linux 3.7
|
|
|
|
|
|
|
|
# Quick Start
|
|
|
|
|
|
|
|
* The quickest way to get started is using [docker-compose](https://docs.docker.com/compose/). See the examples folder for a working
|
|
|
|
[docker-compose.yml](examples/docker-compose.yml) that can be modified for development or production use.
|
|
|
|
|
|
|
|
* Set various [environment variables](#environment-variables) to understand the capabilities of this image.
|
|
|
|
* Map [persistent storage](#data-volumes) for access to configuration and data files for backup.
|
|
|
|
|
|
|
|
|
|
|
|
# Configuration
|
|
|
|
|
|
|
|
### Environment Variables
|
|
|
|
|
|
|
|
Along with the Environment Variables from the [Base image](https://hub.docker.com/r/tiredofit/alpine), below is the complete list of
|
|
|
|
available options that can be used to customize your installation.
|
|
|
|
|
|
|
|
| Parameter | Description |
|
|
|
|
|-----------|-------------|
|
|
|
|
| `$DB_HOST` | Hostname of MariaDB Container |
|
|
|
|
| `$DB_NAME` | Name of MariaDB Database |
|
|
|
|
| `$DB_USER` | Database Username |
|
|
|
|
| `$DB_PASS` | Password for Above User |
|
|
|
|
| `$DB_PORT` | MariaDB Server Port - Default `3306`
|
|
|
|
| `$DB_ROOT_PASS` | Needed for first boot - Assigns privileges to $DB_USER. MySQL Root Pass |
|
|
|
|
| `$RABBITMQ_HOST` | RabbitMQ Hostname or Container |
|
|
|
|
| `$RABBITMQ_VHOST` | RabbitMQ VHost shard |
|
|
|
|
| `$RABBITMQ_USER` | RabbitMQ Username |
|
|
|
|
| `$RABBITMQ_PASS` | RabbitMQ Password |
|
|
|
|
| `$RABBITMQ_PORT` | RabbitMQ Port - Default `5672` |
|
|
|
|
| `ENABLE_CLAMAV` | Enable ClamAV `true` or `false` - Default `false` |
|
|
|
|
| `ENABLE_SPAMASSASSIN` | Enable Spamassassin `true` or `false` - Default `false` |
|
|
|
|
| `CLAMAV_HOST` | Hostname of Clamd Server |
|
|
|
|
| `SPAMASSASSIN_HOST` | Hostname of Spamassassin Server |
|
|
|
|
| `CLAMAV_PORT` | TCP Port of Clamd Server - Default `3310` |
|
|
|
|
| `SPAMASSASSIN_PORT` | TCP Port of Spamassassin Process - Default `737` |
|
|
|
|
| `LOG_CONSOLE` | Log to Stdout Console `true` or `false` - Default `true` |
|
|
|
|
|
|
|
|
### Networking
|
|
|
|
|
|
|
|
| Port | Description |
|
|
|
|
|-----------|---------------|
|
|
|
|
| `5000` | Procodile |
|
|
|
|
| `25` | SMTP |
|
|
|
|
| `587` | Submission |
|
|
|
|
|
|
|
|
# Maintenance
|
|
|
|
|
|
|
|
#### Shell Access
|
|
|
|
|
|
|
|
For debugging and maintenance purposes you may want access the containers shell.
|
|
|
|
|
|
|
|
```bash
|
|
|
|
docker exec -it (whatever your container name is e.g. postal) bash
|
|
|
|
```
|
|
|
|
|
|
|
|
# References
|
|
|
|
|
|
|
|
* https://github.com/atech/postal
|
|
|
|
|