Hostname für HA im Docker Container

Eng genommen ist es gar kein HA-Thema, aber mich würde trotzdem interssieren wie ihr euren HA aus dem lokalen Netz anprecht.

Von extern habe ich https://homeassistant.beispiel.de über einen proxy auf meinen HA weitergeleitet. Von meinen PCs/Handys nutze ich auch diese Adresse.

Intern kann ich über http://docker.local:8123 auch direkt auf den HA zugreifen. Das finde ich zwar nicht wirklich elegant, schöner wäre der Zugriff über https://homeassistant.local oder https://ha.docker.local oder so, tut’s aber für’s erste.

Habt ihr ein entsprechendes Setup? Und wenn ja, wie groß ist der Aufwand?

Hi.

Extern mache ich es wie du. Intern nutze ich einfach die IP von HA. Funktioniert immer, also warum erst groß irgend einen Aufwand mit DNS Umschreibungen oder ähnlichem machen? Das wäre mir der Aufwand nicht wert.

Für den Notfall habe ich noch Wireguard am Start.

Wenn Du Dir einen Favoriten/Lesezeichen/oder wie immer man es nennen will anlegst, klickst Du ganz eleganz drauf und erreichst dein HA…
Oder störst Du Dich tatsächlich an der vermeintlich krypischen Adresse in der Adresszeile des Browsers?

ja, es ist tatsächlich die kryptische Adresse, die mich irgendwie stört.

Und (wie auch @N3RO365 sagt) habe ich bisher den Aufwand gescheut das Thema anzugehen (mDNS, avahi, …, ???)

Manche User haben echt Sorgen … :laughing: Nein wenn Dich etwas stört dann ist das eben so und auch ok, :slightly_smiling_face: aber ich habe so eine Wunsch in der Form glaube ich noch nie irgendwo gehört oder gelesen.

Wenn das

auch nicht in Frage kommt dann dürfte das

wohl ein etwas größerer Aufwand werden, denn ohne eine vorgeschaltete Proxy-Lösung ist mir kein Weg bekannt wie Du das und dann auch noch ganz einfach, realisieren könntest.

VG Jim

Tja, wenn man keine Probleme hat dann macht man sich eben welche! :smiley:

Aber ein wenig Ästhetik kann nicht schaden, oder mit anderen Worten: … Das Auge isst mit!

Naja, wenn dem so ist, ist dem halt so.
Jedem Tierchen sein Pläsierchen.

Oder wie auch meine Oma gesagt hätte:

Aber hey, dümmer wird man nicht, wenn man versucht sowas umzusetzten.
Um Dir ggf. helfen zu können müsste man wissen, was bei Dir zu Hause ggf. schon läuft wie z.Bsp. ein lokaler DNS-Server,…

Aber nicht in den HA beißen!!! :index_pointing_up:
:laughing:

Das musst du etwas genauer erklären, oder es fehlt an den Grundlagen von Docker.

Docker läuft erstmal auf einem Host. Dieser hat einen Hostnamen. Über diesen Hostnamen hast du den Docker Host erreichen wenn dein DNS, z. B. Fritzbox normal läuft. Beispiel Containerhost123.

Nun zum Setup in Docker. Home Assistant hat normal 8123 Port. Wenn du den Container anlegst stellst du in der Config ein welcher Port vom Host auf welchen Port im Container gemappt wird. Am Host muss es nicht 8123 sein. Du könntest auch HOst 8080 auf Container 8123 mappen.

Nun hast du den Host und Port. In dem Beispiel Containerhost123 auf Port 8080. Also wäre dein HA über http(s)://Containerhost123:8080 erreichbar. Da ist nichts kryptisch.

Offenbar sehen das die einen so und die anderen anders…

Je nach dem wie man “kryptisch” definiert.

Ich verwende einen Proxmox-Server, darauf läuft mein Docker-Server (birdge zum “normalen LAN”) und darin mein HA, verbunden mit dem Host-Netzwerk. Da der HA im Host-Netz ist benötige ich gar kein Portforwarding und mein HA ist über http://docker:8123, http://docker.local:8123 oder http://docker.fritz.box:8123 erreichbar.

Nichtsdestotrotz finde ich es halt schöner wenn ich meine HA über http oder https://ha.fritz.box erreichen würde.

Ist halt keine Default Config. Warum das nötig ist ist aber ein anderes Thema und hier OT.

Um HA über ha.<local_domain> statt docker.<local_domain> zu erreichen

  • Hostname der VM/LCX auf HA ändern.
  • Im DNS der IP einen Alias zuweisen
  • Im DNS den Namen zur IP ändern. Geht in der Fritzbox in der Oberfläche
  • In Proxmox eine LXC anlegen mit Hostname HA und einen Reverse Proxy darin laufen lassen

Um das Ganze über Port 80 (http) oder 443 (https) zu erreichen

  • Docker ohne Network: Host laufen lassen und stattdessen Port 80 und/oder 443 auf 8123 mappen
  • Reverse Proxy der auf 80/443 reagiert und dann an 8123 weiterleitet

Danke für eure Tipps.

Nach einingem hin und her und diversen Fehlversuchen habe ich es nun so gelöst, dass ich auf dem Docker-Server einen PI-hole installiert habe und diesen auch als DHCP+DNS-Server nutze. Darin habe ich mir eine eigene Domain “internal” eingerichtet. Mit PI-hole als DNS Server kann ich nun meine CNAMEs selbst verwalten, alle Server (esphome, ha, …) verweisen nun auf den Docker-Server. Darüber hinaus läuft hier ein NGINX Proxy (manager) die Requests entgegenimmt und an entsprechende Ports der Docker-Container weiterleitet.