* build: multi-stage Docker image with uv and BuildKit caching
Builder/runtime split keeps the toolchain out of the runtime image
(standalone ~1.8GB -> ~1.2GB). Dependencies install with uv from
uv.lock in a cache-mounted, source-independent layer. Runtime keeps
the editable install because akkudoktoreos.core.version needs the
src/ layout. Also fixes the io.hass.version label and adds a
HEALTHCHECK.
* build: address Docker image review feedback
- Healthcheck honours EOS_SERVER__PORT instead of hardcoding 8503.
- BUILD_VERSION defaults to "dev" rather than the literal "VERSION";
docker-compose passes the real version, and the redundant
org.opencontainers.image.version label is dropped (CI sets it via
docker/metadata-action).
* fix: use resolved server port for container healthcheck
---------
Co-authored-by: Normann <github@koldrack.com>
Co-authored-by: Normann Koldrack <normann.koldrack@desy.de>