docs: machine requirements by what is switched on, measured
test / test (push) Waiting to run

Owner, 2026-10-19: "Нам нужно записать в документы для деплоя минимальные
требования к машине в зависимости от включённых опций." The README's
"1 vCPU, 512 MB-1 GB RAM, 8-10 GB disk" had never been measured.

Measured on the test installation (2.16.0, inbound relay and rspamd on,
2 vCPU / 4 GB), 2026-10-19:
- the SelfPost container: cgroup 55 MB at rest, 78 MB peak since the
  rollout; panel and supervisord ~30 MB RSS each, Postfix daemons 6-12 MB;
- the rspamd sidecar: 117 MB, peak 120 MB, five processes;
- CPU at rest under 0.1 %; images 315 MB and 311 MB;
- the build step of build/Dockerfile, cold, in golang:1.26-trixie held by
  docker run --memory/--memory-swap and --cpus 1: killed at 512 MB and 1 GB
  (compile of modernc.org/libc, modernc.org/sqlite), passed at 1.5 GB
  (269 s) and 2 GB; unlimited on 2 CPUs 150 s, cgroup peak 1.5 GB. Build
  cache per build: go mod download 577 MB, compile step 403 MB; the Go
  image 1.28 GB;
- send log: dbstat pages and 4.9 lines of ~150 B per message give about
  2-3 KB a message (the guide's env table already said 1-2 KB for the lines);
  mail.log ~400 KB a day of mostly port-25 noise on the test server.
Postfix's own refusal for a short disk cited from src/smtpd/smtpd_check.c,
smtpd_check_queue(). What is worked out rather than measured (the 1 000 and
10 000 a day figures, the host memory column) says so or is framed as a
minimum with room for the host.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
mix
2026-10-19 00:23:35 +03:00
co-authored by Claude Opus 5.5
parent 91dadf7b35
commit 839a752341
3 changed files with 95 additions and 3 deletions
+10
View File
@@ -5,6 +5,16 @@ Format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/); version
## [Unreleased]
### Documentation
- **Machine requirements by what is switched on** (guide § Installation,
README § Requirements), measured on the test installation instead of the
old unmeasured "1 vCPU, 512 MB-1 GB, 8-10 GB": 512 MB of host memory for
outbound mail with or without port 25, 1 GB with the spam filter; one
vCPU. Building the image needs 1.5 GB of memory - a build held to 1 GB was
killed in the Go compiler - and about 3 GB of free disk. The send log
grows about 2-3 KB a message for its retention.
## [2.16.0] - 2026-10-18
The queues as the 2.0 mockups drew them: Outbound › Queue a table, Inbound ›