fix(docker): fail fast on CPUs that lack SSE4.2 support (#118)

On old hardware (e.g. AMD Turion/Phenom, Intel Core 2), sharp's musl binary
crashes with SIGILL during NestJS module init. Combined with bufferLogs: true
and restart: unless-stopped, this produces a silent infinite restart loop -
only the migration success message is ever visible.

Add check_cpu_sse42 to entrypoint.sh: greps /proc/cpuinfo for sse4_2, exits
with a clear error if absent, no-op when /proc/cpuinfo is unavailable. Also
add a System Requirements section to README documenting the SSE4.2 minimum.

Closes #116
This commit is contained in:
neon
2026-05-27 14:27:12 -06:00
committed by GitHub
parent 419f634e5c
commit 3f32d8e828
2 changed files with 28 additions and 0 deletions
+12
View File
@@ -72,6 +72,18 @@ Note: The demo includes a sample library of public domain books. Some features a
---
## System Requirements
| Component | Minimum |
| ------------ | ------------------------------------------------------------------------------- |
| CPU (x86-64) | SSE4.2 support required - Intel Core (Nehalem, 2008+) or AMD (Bulldozer, 2011+) |
| RAM | 1 GB (2 GB+ recommended) |
| Docker | 20.10+ |
> **CPU note:** The image processing library used for book covers requires SSE4.2 instructions. CPUs that pre-date Intel Nehalem (2008) or AMD Bulldozer (2011) do not meet this requirement - including the entire Intel Core 2 series, AMD Phenom, and AMD Turion families. If your CPU is incompatible, the container will exit immediately with a clear error message rather than looping silently.
---
## Quick Start
```bash