diff --git a/mqtt/Dockerfile b/mqtt/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..c566cfe72bf7cfc9e6d4ecb52fffe77d8ab37772 --- /dev/null +++ b/mqtt/Dockerfile @@ -0,0 +1,19 @@ +FROM python:3.12-slim + +# Arbeitsverzeichnis im Container +WORKDIR /app + +# Projektdateien kopieren +COPY . . + +# uv installieren +RUN pip install uv + +# Abhängigkeiten aus pyproject.toml installieren +RUN uv pip install --editable . --no-cache-dir + +# PYTHONPATH setzen, damit das Import-Modul korrekt ist +ENV PYTHONPATH=src + +# Startkommando +CMD ["uv", "run", "-m", "mqtt_influx_backend.main"] diff --git a/mqtt/pyproject.toml b/mqtt/pyproject.toml index d74aeac5e542efcb1ff4f55aac2e0f4e85da325a..70f1ca35436ac27b1d12bfbcc7f9bcbfb3721fb7 100644 --- a/mqtt/pyproject.toml +++ b/mqtt/pyproject.toml @@ -7,6 +7,7 @@ requires-python = ">=3.10" dependencies = [ "paho-mqtt", "influxdb-client", + "python-dotenv", ] [build-system] diff --git a/mqtt/src/mqtt_influx_backend/mac_to_room.json b/mqtt/src/mqtt_influx_backend/mac_to_room.json index d6a303c1c2d93dd2193c5c29ea89d89bb60baba8..b1bfeb24d55266487cc0a4f0fdc645800fdc45fd 100644 --- a/mqtt/src/mqtt_influx_backend/mac_to_room.json +++ b/mqtt/src/mqtt_influx_backend/mac_to_room.json @@ -3,5 +3,6 @@ "11:22:33:44:55:66": "K\u00fcche", "77:88:99:AA:BB:CC": "Schlafzimmer", "DE:AD:BE:EF:12:34": "", - "DK:AD:BE:EF:12:34": "" + "DK:AD:BE:EF:12:34": "", + "EK:AD:BE:EF:12:34": "" } \ No newline at end of file diff --git a/mqtt/uv.lock b/mqtt/uv.lock index f595e9a83c37791fb15cc3e69e7e18c0fb18aa11..91d64efb95c8e697807398c55e93edacc1939a89 100644 --- a/mqtt/uv.lock +++ b/mqtt/uv.lock @@ -34,12 +34,14 @@ source = { editable = "." } dependencies = [ { name = "influxdb-client" }, { name = "paho-mqtt" }, + { name = "python-dotenv" }, ] [package.metadata] requires-dist = [ { name = "influxdb-client" }, { name = "paho-mqtt" }, + { name = "python-dotenv" }, ] [[package]] @@ -63,6 +65,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7470427", size = 229892 }, ] +[[package]] +name = "python-dotenv" +version = "1.1.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/88/2c/7bb1416c5620485aa793f2de31d3df393d3686aa8a8506d11e10e13c5baf/python_dotenv-1.1.0.tar.gz", hash = "sha256:41f90bc6f5f177fb41f53e87666db362025010eb28f60a01c9143bfa33a2b2d5", size = 39920 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/1e/18/98a99ad95133c6a6e2005fe89faedf294a748bd5dc803008059409ac9b1e/python_dotenv-1.1.0-py3-none-any.whl", hash = "sha256:d7c01d9e2293916c18baf562d95698754b0dbbb5e74d457c45d4f6561fb9d55d", size = 20256 }, +] + [[package]] name = "reactivex" version = "4.0.4"