Create a dedicated appuser/appuser system user and group, ensure the
copied application file is owned by it, and switch to that user with
USER before CMD. EXPOSE 110 25 is unchanged; ports are published via the
host -p mapping, so binding them as non-root works in the default Docker
network namespace without CAP_NET_BIND_SERVICE.
Fixes#7
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>