58 Commits (31c4f13e16d34515241899180fca233001c6a69a)

Autor SHA1 Mensaje Fecha
bors[bot] d129733fac Merge #919
919: Install bash in alpine based images. r=mergify[bot] a=firvida

This fixes #918

Bash shell is used by default in Kubernetes' dashboard console, which is very
useful for admins.

## What type of PR?

bug-fix

## What does this PR do?

### Related issue(s)
- closes #918 

## Prerequistes
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.

- [ ] In case of feature or enhancement: documentation updated accordingly
- [ ] Unless it's docs or a minor change: place entry in the [changelog](CHANGELOG.md), under the latest un-released version.


Co-authored-by: Abel Alfonso Fírvida Donéstevez <abel@merchise.org>
hace 6 años
bors[bot] d3a5c70589 Merge #907
907: Don't generate the clamav configuration if ANTIVIRUS is none. r=mergify[bot] a=mvaled

## What type of PR?

bug-fix

## What does this PR do?

Avoid rspamd to try to connect to clamav if you choose ANTIVIRUS="none".  Otherwise the rspamd will try to connect to none, timing out several times and leading to poor performance.

I have a server without CLAMAV; and I'm getting times up to 45s:

```
$ grep 'CLAMAV' ~/downloads/logs-from-antispam-in-mailu-security-5d75fb987-kv958.txt | grep -o 'time: [^m]*'
time: 45011.089
time: 45126.002
time: 45002.024
time: 45037.436
time: 45006.775
...
```

Mails for which clamav is not used range from a tens of miliseconds to a few hundred.


## Prerequistes
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.

- [ ] In case of feature or enhancement: documentation updated accordingly
- [ ] Unless it's docs or a minor change: place entry in the [changelog](CHANGELOG.md), under the latest un-released version.


Co-authored-by: Manuel Vázquez Acosta <manuel@merchise.org>
hace 6 años
Abel Alfonso Fírvida Donéstevez 39444c794e Install bash in alpine based images.
This fix https://github.com/Mailu/Mailu/issues/918

Bash shell is used by default in Kubernetes' dashboard console, which is very
useful for admins.
hace 6 años
bors[bot] 86b4242f82 Merge #886
886: Ipv6 support r=mergify[bot] a=muhlemmer

## What type of PR?

(Feature, enhancement, bug-fix, documentation) -> A bit of everything

## What does this PR do?

Document how to use ipv6nat. This, however triggers some kind of flaky behavior with the Docker DNS resolver, resulting in lookup failures between containers.  So all resolving needs to be done during container startup/configuration.

In order not to pollute every single start.py file, we've created a small library called [Mailu/MailuStart](https://github.com/Mailu/MailuStart). As an addition, this library also defines the template generation function, including its logging facility.

Note: `docker-compose.yml` downgrade is necessary, as IPv6 settings are not supported by the Docker Compose file format 3 😞  

### Related issue(s)
Supersedes  PR #844
- Fixes #827 
- Hopefully helps with #829 and #834

## No backport yet

This PR directly imports MailuStart from git. This makes it a bit more simple to implement on the short term an do some testing and probably some future improvements. When everything is proved stable, we will create a proper PyPi package with versioning and consider back porting.

## Prerequistes
Before we can consider review and merge, please make sure the following list is done and checked.
If an entry in not applicable, you can check it or remove it from the list.

- [x] In case of feature or enhancement: documentation updated accordingly
- [x] Unless it's docs or a minor change: place entry in the [changelog](CHANGELOG.md), under the latest un-released version.


Co-authored-by: Ionut Filip <ionut.philip@gmail.com>
Co-authored-by: Tim Möhlmann <muhlemmer@gmail.com>
hace 6 años
Manuel Vázquez Acosta 611363cbe4
Don't generate the clamav configuration if ANTIVIRUS is none.
Otherwise the rspamd will try to connect to none, timing out several times and
leading to poor performance.
hace 7 años
Ionut Filip 004a431e97
Change to mailustart functions hace 7 años
Ionut Filip 9684ebf33f Use mailustart package from git hace 7 años
Thomas Sänger f50995b5e6
unbound: drop privileges after binding to port hace 7 años
Tim Möhlmann 049ca9941f
Cleanup syntax and fix typo hace 7 años
Tim Möhlmann 7d01bb2a4d
LOG_LEVEL docs and changelog entry hace 7 años
Tim Möhlmann b04a9d1c28
Implement debug logging for template rendering hace 7 años
Tim Möhlmann b9313488dd
Add logging for tenacity.retry
In the process we found that the previous way of tenacity syntax caused it not to honor any args.
In this commit we've refactored to use the @decorator syntax, in which tenacity seems to behave better.
hace 7 años
Tim Möhlmann 8172f3eab8
Move the Mailu Docker network to a fixed subnet.
This will make network configuration and host based authentication
more robust, across different deployment platforms.
The options `RELAYNETS` and`POD_ADDRESS_RANGE` are kept for compatibility.
However, their usage have become optional.
hace 7 años
mergify[bot] 5c24390114
Merge pull request #697 from HorayNarea/fix-missing-dkim
allow DKIM-signing if From-Header and Auth-User mismatch - fix #462
hace 7 años
mergify[bot] e08f3e81d0
Merge pull request #680 from usrpro/feat-startup
Standarize images
hace 7 años
Thomas Sänger 13bc6261e4
allow DKIM-signing if From-Header and Auth-User mismatch hace 7 años
Tim Möhlmann 42e2dbe35d
Standarize image by using shared / similair layers hace 7 años
Tim Möhlmann 903bb70c5b
Merge remote-tracking branch 'upstream/master' into standarize-images hace 7 años
Thomas Sänger 9ba086fcff
store rspamd history in redis hace 7 años
Tim Möhlmann bcfce27ee2
Standarize unbound, prepare for setup inclusion
- Use jinja template for configuration file (start.py)
- Limit access to the Mailu subnet
- Implement health checks
hace 7 años
Ionut Filip 8a44a44688
Merge branch 'master' into feat-startup hace 7 años
Ionut Filip 1187cac5e1 Finished up switching from .sh to .py hace 7 años
Ionut Filip eb7dfb5771 Cleaning up start.py hace 7 años
Thomas Sänger 603b6e7390
Merge pull request #2 from usrpro/fix-nginx-healthcheck
Fix nginx healthcheck
hace 7 años
Tim Möhlmann 81b24f61e8
Merge branch 'master' into feat-healthchecks hace 7 años
Tim Möhlmann a2fea36c79
Increase HEALTHCHECK start time for services that need to wait for host resolving during startup.
In Docker Swarm mode the services listed below can get stuck in their start script, while they
are waiting for other services become available. Now, with HEALTHCHECK enabled, docker does not resolve
names of services that not pass HEALTHCHECK yet. Meaning that if one of the depenend services is not yet
available, it will create a chain of failing services.

The services below retry to resolve 100 time, with an average of 3.5 seconds. Hence, the --start-time
flag is now set at 350 seconds.
- dovecot (imap)
- postfix (smtp)
- rspamd (antispam)
hace 7 años
mergify[bot] 118ea0f3fb
Merge pull request #604 from ofthesun9/feature-swarm
Enabling swarm deployment on master branch
hace 7 años
ofthesun9 86bdce8407 Explicitely specify the fuzzy worker listen address hace 7 años
ofthesun9 cec5c1b16b Merge branch 'master' into feat-fuzzyhashes hace 7 años
Thomas Sänger 39272ab05c
add healthcheck for http services hace 7 años
mergify[bot] 39f58c03ff
Merge pull request #644 from usrpro/fix-alpine-38
Move to alpine:3.8. Fixes #625 and #627
hace 7 años
Tim Möhlmann 2c7a5a97e4
Move to alpine:3.8. Fixes #625 and #627 hace 7 años
kaiyou 00b5ae11db
Merge branch 'master' into feat-abstract-db hace 7 años
ofthesun9 1f71d10899 Change POD_ADDRESS_RANGE introduction like it is done on deovecot-sql.conf.ext hace 7 años
ofthesun9 13146be57e Merge branch 'master' into feature-swarm hace 7 años
ofthesun9 6b34b2728e Declare fuzzy_worker port 11335 in EXPOSE section hace 7 años
ofthesun9 0eb963eb21 Merge branch 'master' into feat-fuzzyhashes hace 7 años
ofthesun9 74796201ec Merge branch 'master' into feature-swarm hace 7 años
Tim Möhlmann 0817629869
Increase attempts as it failed on fresh Swarm host hace 7 años
Tim Möhlmann 16469d7282
Upgrade to newer pip version hace 7 años
Tim Möhlmann 1bae5968ad
Import tenacy and fix syntax errors hace 7 años
Tim Möhlmann c457ccfa60
Use tenacity for resolver retries hace 7 años
Tim Möhlmann d6c386651d
Merge branch 'master' into fix-swarm-start hace 7 años
Thomas Sänger 76923d80d8
implement support for ARC hace 7 años
kaiyou 2cba045013 Explicitely declare required volumes, fixes #568 hace 7 años
kaiyou f9c6c98180 Remove fetchmail dependency to the databse hace 7 años
ofthesun9 23e288aadc Enabling swarm deployment on master branch:
-Extends the usage of POD_ADDRESS_RANGE
-Provides documentation
hace 7 años
Tim Möhlmann cc8e15748b Retry 10 times when resolving fails in start.py scripts hace 7 años
ofthesun9 12294a6e5a Trying to enable fuzzy hashes for rspamd hace 7 años
Pierre Jaury 52d89b2f5d Fix rspamd behavior, currently failing due to worker-fuzzy hace 7 años