j4n
ae0b2345de
docker: run install stage at build time, configure+activate at startup
...
Move the CMDEPLOY_STAGES=install execution into the Dockerfile these
operations baked into the image layer. On container start, only
configure and activate stages run by default. Users can override with
CMDEPLOY_STAGES="install,configure,activate" to force a full reinstall
without rebuilding the image.
Also fixes CERTS_MONITORING_TIMEOUT typo in docker-compose.yaml (was
"$CERTS MONITORING TIMEOUT"), and replaces the docker-commit workaround
in docs with CMDEPLOY_STAGES documentation.
2026-02-16 14:41:48 +01:00
j4n
e5ba9f9d03
docker: widen build context to repo root for build-time install stage
...
The Dockerfile will need access to chatmaild/ and cmdeploy/ source
trees to run CMDEPLOY_STAGES=install via pyinfra during image build,
moving install-time work out of container startup. The previous context
(./docker) only included helper scripts.
Also adds .dockerignore to exclude .git, data/, venv/ etc. from the
build context, and updates COPY paths accordingly.
2026-02-16 14:41:48 +01:00
j4n
e20256c484
feat(cmdeploy): guard against non-running systemd
...
This enables docker image building without systemd running, which would
make pyinfra SystemdEnabled fail.
2026-02-16 14:41:48 +01:00
j4n
1889f554a3
docker: remove echobot parts that were lingering in the feature branch
2026-02-16 14:41:48 +01:00
Keonik1
f26cb08500
cmdeploy: Add config parameters change_kernel_settings and fs_inotify_max_user_instances_and_watchers
2026-02-16 14:41:48 +01:00
missytake
60ff9821b1
cmdeploy: add config (, )
2026-02-16 14:41:48 +01:00
missytake
f9fad1fd03
docker: use --network=host so chatmail-turn can use any port
2026-02-16 14:41:48 +01:00
missytake
8be7082d21
docker: open ports for TURN + STUN
2026-02-16 14:41:48 +01:00
missytake
6e5004dc9f
docker: move all configuration to example.env
2026-02-16 14:41:48 +01:00
missytake
92b6825b5b
doc: fix linebreak
2026-02-16 14:41:48 +01:00
missytake
8bba78ebaf
docker: disable port check if docker is running. fix #694
2026-02-16 14:41:48 +01:00
missytake
615613bd66
Suggestions from @Keonik1
...
Co-authored-by: Keonik <57857901+Keonik1@users.noreply.github.com >
2026-02-16 14:41:48 +01:00
missytake
c5a8d00558
docker: enable DNS checks before cmdeploy run again
2026-02-16 14:41:48 +01:00
Keonik1
38fb191c86
fix unlink if default nginx conf is not exist
...
- https://github.com/chatmail/relay/pull/614#discussion_r2297828830
2026-02-16 14:41:48 +01:00
Keonik1
dbc386bd00
Fix issue with acmetool
...
- https://github.com/chatmail/relay/pull/614#discussion_r2279630626
2026-02-16 14:41:48 +01:00
Keonik1
1e617041bd
Delete ssh connection from docker installation
...
- https://github.com/chatmail/relay/pull/614#discussion_r2269986372
- https://github.com/chatmail/relay/pull/614#discussion_r2269991175
- https://github.com/chatmail/relay/pull/614#discussion_r2269995037
- https://github.com/chatmail/relay/pull/614#discussion_r2270004922
2026-02-16 14:41:48 +01:00
Keonik1
959afe6f14
fix docs - nginx "restart" to "reload"
...
https://github.com/chatmail/relay/pull/614#discussion_r2269896158
2026-02-16 14:41:48 +01:00
Keonik1
c605d1a465
Fix bug with attaching certs
2026-02-16 14:41:48 +01:00
Keonik1
72ae869eab
pass values to MAIL_DOMAIN and ACME_EMAIL from vars for docker-compose-default
...
https://github.com/chatmail/relay/pull/614#discussion_r2279591922
2026-02-16 14:41:48 +01:00
Keonik1
e1be8a24a1
change "restart nginx" to "reload nginx"
...
https://github.com/chatmail/relay/pull/614#discussion_r2269896158
2026-02-16 14:41:48 +01:00
Keonik1
3896071921
add RECREATE_VENV var
...
https://github.com/chatmail/relay/pull/614#discussion_r2279742769
2026-02-16 14:41:48 +01:00
Keonik1
0d5e544291
add 465 port
...
https://github.com/chatmail/relay/pull/614#discussion_r2279707059
2026-02-16 14:41:48 +01:00
Keonik1
31fc856993
add port 80 to docker-compose-default
...
https://github.com/chatmail/relay/pull/614#discussion_r2279656441
2026-02-16 14:41:48 +01:00
Keonik1
fb798bb6a3
rename dockerfile
...
https://github.com/chatmail/relay/pull/614#discussion_r2270031966
2026-02-16 14:41:48 +01:00
Keonik1
985e98ccb7
Add installation via docker compose (MVP 1)
2026-02-16 14:41:48 +01:00
Jagoda Estera Ślązak
91df11015e
chore(deps): upgrade to filtermail v0.3 ( #850 )
...
## 0.3.0 - 2026-02-14
### Features
- Support legacy, pre-OpenPGP packet format
### Miscellaneous Tasks
- *(dist)* Switch to musl targets
### Refactor
- Remove unnecessary Arc
- Use a custom, minimal SMTP client instead of lettre
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-02-14 18:02:05 +01:00
link2xt
d4f8a29243
docs: fix link to Maddy and update madmail URL
2026-02-13 09:49:29 +00:00
missytake
0144fc3ea8
postfix: only look for square brackets, they are only allowed for address literals
2026-02-12 10:45:15 +01:00
missytake
e7ce6679b9
postfix: IPv6 literals have a prefix
2026-02-12 10:45:15 +01:00
missytake
d1adf52f89
postfix: also accept self-signed for IPv6-only
2026-02-12 10:45:15 +01:00
missytake
56d0e2ca27
postfix: be more exact with nauta.cu
2026-02-12 10:45:15 +01:00
missytake
2613558db6
postfix uses POSIX EREs, not PCRE, so some stuff doesn't work
2026-02-12 10:45:15 +01:00
missytake
6843fcb1a0
postfix: fix tls policy regexp map
2026-02-12 10:45:15 +01:00
missytake
ff54ad88d8
postfix: use regexp to match IPv4 addresses
2026-02-12 10:45:15 +01:00
missytake
cce2b27ae7
postfix: accept self-signed certificates for IP-only relays
2026-02-12 10:45:15 +01:00
j4n
87022e3681
fix(cmdeploy): check if dns_check_disabled before trying to warn about LE
...
If --skip-dns-check is used and retcode != 0, remote_data is undefined.
2026-02-11 12:13:24 +01:00
j4n
06560dd071
feat(postfix): bind to mail_domain's A/AAAA addresses for outbound mail
...
Carry forward A/AAAA address from the DNS check to the postfix deploy
stage and set accordingly in main.cf.
2026-02-11 12:13:24 +01:00
j4n
1b0337a5f7
fix(cmdeploy): port check: check addresses, fix single services
...
Ensure that the interface for mtail_address is available and fix a bug
in port checking where single services were always passing regardless of
the specified service name.
2026-02-11 09:36:04 +01:00
373[Ø]™
dfcaf415b1
Merge pull request #834 from chatmail/373/fix-dns-resolver-injection
...
fix: remediates issue with improper concat on resolver injection
2026-01-30 23:36:46 +00:00
ccclxxiii
c0718325ef
fix: simplify resolver fix
2026-01-30 22:17:53 +00:00
ccclxxiii
7d72b0e592
fix:[wip] fix concact issue which causes dns failure
2026-01-30 21:10:19 +00:00
373[Ø]™
8f1e23d98e
Merge pull request #832 from chatmail/373/respect-ipv4-ipv6-boolean-config
...
remediates ipv6 boolean not being respected during operations
2026-01-30 17:53:36 +00:00
ccclxxiii
56aaf2649b
chore: fixes bug in dovecot template
2026-01-30 15:52:32 +00:00
ccclxxiii
2660b4d24c
feat: updates postfix for ipv4/v6
2026-01-30 15:27:02 +00:00
ccclxxiii
ea60ecfb57
feat: updates deployers for ipv4/v6 bool
2026-01-30 15:26:45 +00:00
ccclxxiii
2a3a224cc2
feat: adds template for unbound v4/v6
2026-01-30 15:24:26 +00:00
Jagoda Ślązak
e42139e97b
chore(deps): upgrade to filtermail v0.2
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-01-28 20:46:02 +00:00
Jagoda Estera Ślązak
65b660c413
docs: update information about filtermail ( #824 )
...
Signed-off-by: Jagoda Ślązak <jslazak@jslazak.com >
2026-01-27 13:20:09 +01:00
link2xt
dd2beb226a
test(test_exceed_rate_limit): print timestamps when sending messages
2026-01-26 14:25:06 +00:00
link2xt
9c7508cc33
test: fix flaky test_exceed_rate_limit
...
filtermail rate limiter is using leaky bucket
algorithm (GCRA).
Exceeting the limit requires sending
at least max_user_send_per_minute
messages to exhaust allowed burst,
and then sending messages faster
than the leak rate.
As we don't know how fast is the network
between the server and test runner,
try to send 3 times max_user_send_per_minute
messages to ensure the test does not
fail randomly.
2026-01-26 12:07:10 +00:00