v17.7.0
parruda/swarmv17.7.0Jul 17, 2026by github-actions[bot]
AI Summary
Docker images now run as non-root users by default and were updated to Ubuntu 26.04.
Key Highlights
- Docker images now run as non-root user by default
- Working directory now defaults to `/data`
- Base images updated to Ubuntu 26.04 and Alpine 3.24
- Tesseract 5 installed from Ubuntu archive
Breaking Changes
- Docker images now run as non-root users; bind mounts may require permission adjustments or the `--user` argument.
New Features
- Non-root Docker image configuration
- Updated base images
Full Release Notes
- The Docker images now run as a non-root user (`app`, uid/gid 1000) by default rather than as root, as a defense-in-depth measure. If you bind-mount a directory for input and output, you may now need to add a `--user` argument so the container can write to it; the correct value differs for rootless Docker, Podman, and rootful Docker, and is described in the Docker documentation. Piping the input and output through stdin/stdout still works with no permission setup. - The Docker images now default their working directory to `/data`, so files in a directory mounted there can be given as relative paths without an explicit `--workdir`. - The Ubuntu Docker image now installs Tesseract 5 from the Ubuntu archive instead of the third-party `alex-p/tesseract-ocr5` PPA, and the base images were updated to Ubuntu 26.04 and Alpine 3.24. - Fixed a missing space in the error message shown when OCRmyPDF cannot access its working directory inside a Docker container. - Updated packaged dependencies, including the optional web service stack (starlette, tornado, python-multipart) and cryptography.