Nenhuma descrição

andryyy 42a64b45d7 Fixes, working rspamd settings, generate DKIM keys in PHP 8 anos atrás
data 42a64b45d7 Fixes, working rspamd settings, generate DKIM keys in PHP 8 anos atrás
.gitignore e9b97e98ec Some changes 8 anos atrás
README.md 42a64b45d7 Fixes, working rspamd settings, generate DKIM keys in PHP 8 anos atrás
build-all.sh 5f04dc0b04 mailcow dockerized 8 anos atrás
build-dovecot.sh 42a64b45d7 Fixes, working rspamd settings, generate DKIM keys in PHP 8 anos atrás
build-memcached.sh 1715a7a871 Fix messages and rebuild without cache 8 anos atrás
build-mysql.sh 1715a7a871 Fix messages and rebuild without cache 8 anos atrás
build-network.sh 5f04dc0b04 mailcow dockerized 8 anos atrás
build-nginx.sh 42a64b45d7 Fixes, working rspamd settings, generate DKIM keys in PHP 8 anos atrás
build-php-fpm.sh 7d6c5ff071 First commit for rspamd settings 8 anos atrás
build-postfix.sh 1715a7a871 Fix messages and rebuild without cache 8 anos atrás
build-redis.sh 1715a7a871 Fix messages and rebuild without cache 8 anos atrás
build-rmilter.sh 1715a7a871 Fix messages and rebuild without cache 8 anos atrás
build-rspamd.sh 42a64b45d7 Fixes, working rspamd settings, generate DKIM keys in PHP 8 anos atrás
build-sogo.sh 1715a7a871 Fix messages and rebuild without cache 8 anos atrás
fix-permissions.sh 42a64b45d7 Fixes, working rspamd settings, generate DKIM keys in PHP 8 anos atrás
mailcow.conf 42a64b45d7 Fixes, working rspamd settings, generate DKIM keys in PHP 8 anos atrás

README.md

mailcow-dockerized

Installation

  1. Open mailcow.conf and change stuff, do not use special chars in passwords. This will be fixed soon.

  2. Run ./build-all.sh

  3. Set a rspamd controller password (see section "rspamd")

Done.

The default username for mailcow is admin with password moohoo.

Usage

build-*.files

(Re)build a container:

./build-$name.sh 

:exclamation: Any previous container with the same name will be stopped and removed. No persistent data is deleted at any time. If an image exists, you will be asked wether or not to repull/rebuild it.

Logs

You can use docker logs $name for almost all containers. Only rmilter does not log to stdout. You can check rspamd logs for rmilter reponses.

When a process dies, the container dies, too. Except for Postfix' container.

MySQL

Connect to MySQL database:

./build-mysql.sh --client

Init schema (will also be installed when running ./build-mysql.sh without parameters):

./build-mysql.sh --init-schema

Reset mailcow admin to admin:moohoo:

./build-mysql.sh --reset-admin

Redis

Connect to redis database:

./build-mysql.sh client

rspamd

Use rspamadm:

docker exec -it rspamd-mailcow rspamadm --help

Use rspamc:

docker exec -it rspamd-mailcow rspamc --help

Set rspamd controller password:

# Generate hash
docker exec -it rspamd-mailcow rspamadm pw

Replace given hash in data/conf/rspamd/override.d/worker-controller.inc:

enable_password = "myhash";

Restart rspamd:

docker restart rspamd-mailcow

Remove persistent data

MySQL:

docker stop mysql-mailcow
docker rm mysql-mailcow
rm -rf data/db/mysql/*
./build-mysql.sh

Redis:

# If you feel hardcore:
docker stop redis-mailcow
docker rm redus-mailcow
rm -rf data/db/redis/*
./build-redis.sh

## It is almost always enough to just flush all keys:
./build-redis client
# FLUSHALL [ENTER]