This is a simple documentation update to notify users that UIDs/GIDs may
(and in fact are) different across distros.
The documentation now reflects the last known state od UIDs/GIDs.
Startup now announces specific UIDs/GIDs used to make sure people are
aware of any future changes.
This is a really dirt fix for issue #180. It will replace "well-known"
enumerated plugin names with SASL mechanism names. While this is more of
a "bandage" than the actual proper fix, I have currently found no better
ways to do it.
Most likely this issue will rise up again with another SASL plugin and
we will deal with it then. At this stage, it should cover most of the
use cases transparently.
So, according to the documentation, usernames must always include a
domain for SASL.
In other words. User cannot be `johhny` but `johhny@example.org`.
Further info can be found on this ticket: https://github.com/bokysan/docker-postfix/issues/192
This commit will automatically append domain if one is not provided in
`SMTPD_SASL_USERS`.
We encountered an issue where the script common-run.sh would fail if the SMTPD_SASL_USERS environment variable was defined. The failure occurred immediately after displaying the "Enable smtpd sasl auth" message, preventing the container from starting correctly.
The root cause was traced to a conditional check for the existence of the /etc/sasl2/sasldb2 file. When the file did not exist, the subsequent `chown` operation was skipped as intended, but the script would still fail due to an undefined behavior in the shell context.
The addition of a debug message "Sasldb configured" before the closing `fi` statement has resolved the issue. This change appears to stabilize the script execution, allowing the container to start as expected.
While the underlying cause is not fully understood and warrants further investigation, this commit serves as a temporary workaround to ensure functionality in environments where SMTPD_SASL_USERS is set.
Default timeout for healthcheck by kubernetes is too low. As we wait up
for 2 seconds for the Postfix and DKIM to respond, this exceeds the
threshold and the healthcheck fails with:
```
Readiness probe failed: command "sh -c /scripts/healthcheck.sh" timed out
```
By simply increasing `timeoutSeconds` this issue is resolved.
From lograte man pages:
> `copytruncate`: Truncate the original log file to zero size in place after creating a copy, instead of moving the old log file and optionally creating a new one.
Why? Because file might be followed by file descriptior (and not name).
So when logrorate rotates the file, Prometheus will follow the old file
(thus receiving no metrics).
By using `comytruncate` we ensure that the followed file is always the
proper one.
This image will now automatically reconfigure `daemon_directory` in case
of distrubution switching.
Alpine and Debian/Ubuntu will use different directly layout and if the
user persists `/etc/postfix`, this image will not start if the
distribution changes.
This will change the `deamon_directory` if it detects a distribution
change. Some distributions will by default set the `deamon_directory` in
`main.cf` and they differentiate between distributions. Hence, updating
to another distribution causes Postfix to fail starting.