NEWS
VisualStudio Code und Devcontainer
-
@OliverIO sagte in VisualStudio Code und Devcontainer:
Man braucht aber dann auf jeden Fall eine Node-Installation unter Windows (und nur dafür)
Sofern du im devcontainer weiterarbeiten willst, ist das korrekt.
@OliverIO sagte in VisualStudio Code und Devcontainer:
Was ist nochmal der Grund warum der nginx als reverse proxy hier eingesetzt wird?
Damit du im Devcontainer die Admin-UI bearbeiten kannst, ohne bei jeder Änderung ein iobroker upload machen zu müssen. Mit dem reverse proxy kommt die Admin-UI für deinen Adapter direkt aus dem Dev-Verzeichnis.
@OliverIO sagte in VisualStudio Code und Devcontainer:
irgendwas mit der nginx-kombination für den reverse-proxy scheint da nicht zu stimmen.
mit localhost:8081 oder auch localhost:80 kommt nichts.
wenn ich localhost:8082 aufrufe kommt bad gateway.Teile doch mal deine Konfiguration inkl. docker-compose.yml und welche Ports ioBroker (web/vis/...) in seinem container nutzt. Da passt garantiert was nicht zusammen.
-
@AlCalzone
Ich habe initial ja nur den adaptercreator ausgeführt und den container gestartet, sonst nichts.
Zur Sicherheit habe ich das soeben komplett nochmal von vorne gemacht.
Ich selbst habe nichts an den Dateien verändert.
Ergebnis:
Gemäß docker Desktop laufen die beiden container iobroker+nginx
iobroker ist über localhost:8081 aber nicht erreichbarWenn du noch weitere Dateien benötigst, sag Bescheid.
Datei .devcontainer
Datei docker-compose
-
@OliverIO sagte in VisualStudio Code und Devcontainer:
iobroker ist über localhost:8081 aber nicht erreichbar
Nein, er ist unter :8082 erreichbar. Steht auch in der README im .devcontainer-Ordner UND in docker.compose.yml
# Make the ioBroker admin available under http://localhost:8082
Ist deswegen nicht der Standardport, weil es sein kann, dass schon eine Instanz unter 8081 läuft.
-
@Asgothian sagte in VisualStudio Code und Devcontainer:
ebnis ist aber das gleiche - ich hab keinen Adapter für d
Hi, bei mir klappt das Debuggen nicht, es kommt ein Fehler:
/usr/bin/node ./main.js --debug 0 Process exited with code 6
meine launch.json:
{ // Use IntelliSense to learn about possible attributes. // Hover to view descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "type": "node", "request": "launch", "name": "Launch TypeScript Adapter", "skipFiles": ["<node_internals>/**"], "program": "${workspaceFolder}/main.js", "args": ["--debug", "0"], "outFiles": ["${workspaceFolder}/build/**/*.js"] } ] }
jemand eine Idee?
E -
@OliverIO sagte in VisualStudio Code und Devcontainer:
wenn ich localhost:8082 aufrufe kommt bad gateway.
auch hier unverändert, wie ich oben geschrieben habe.
-
@OliverIO Bei mir lag da daran, dass auf dem Rechner schon lokal iobroker lief, und er Post 8082 für den web adapter reserviert war.
Habe den Port in der docker-compose.yml einfach auf 9092 gesetzt, dann ging es auch:
nginx: image: nginx:latest depends_on: - iobroker links: - iobroker container_name: nginx-countstates volumes: - ./nginx/nginx.conf:/etc/nginx/nginx.conf - ..:/workspace:cached ports: # Make the ioBroker admin available under http://localhost:8082 - 9082:80
-
@OliverIO sagte in VisualStudio Code und Devcontainer:
auch hier unverändert, wie ich oben geschrieben habe.
Dann zeig mir bitte noch deine nginx.conf
-
Bei mir war es ein echter Fehler im Adapter.
grüße
E -
Auch hier nix verändert, stammt alles so aus dem adapter-creator.
nginx.conf
Ich denke nicht das es an nginx liegt, siehe mein nächsten Post
-
@EdgarM Auf dem Windowsrechner läuft sonst kein weiterer Server und iobroker lief da noch nie, da mein Produktionssystem auf einem NUC läuft.
@AlCalzone
ich hab nun ein wenig weiter recherchiert und im iobroker log die folgende Warnung gefunden:warn: host.iobroker-mytest does not start any instances on this host
Nach ein bisschen Suche im Forum soll man den admin adapter installieren
iobroker add admin
Danach klappt der Zugriff auf iobroker, aber ich habe nun 2 admin instanzen (0=inaktiv und 1=aktiv)
an was könnte das liegen? -
@OliverIO sagte in VisualStudio Code und Devcontainer:
host.iobroker-mytest does not start any instances on this host
Das gibts eigentlich nur, wenn sich der Hostname ändert. Ist mir beim Devcontainer noch nicht untergekommen, vielleicht ist das wegen deiner Container-zu-Container-Migration passiert?
-
@AlCalzone
kann natürlich alles sein, aber ich habe visual studio mit dem ordner, der durch den adapter creator erzeugt wurde neu geöffnet und den container mit diesen Informationen neu erzeugt (rebuild). Wo stehen den in den ganzen Dateien noch irgendwelche hostnamen? -
@OliverIO Nicht im Adapter, aber in dem ioBroker, der im Container läuft. Der ordnet Instanzen bestimmten Hosts zu, was bei manuellen Umzügen gern mal für "does not start any instances" sorgt.
-
@AlCalzone
aber es gibt doch nur einen iobroker container und der wird auf basis der konfigurationsdaten, welche mit dem adapter-creator erzeugt werden, komplett, auf basis von buanet und den weiteren Anweisungen, neu aufgebaut. der erste container hat doch damit nix mehr zu tun.
wenn ich ins logfile schaue dann ist der hostname genau so wie es im docker-compose angegeben ist. -
@OliverIO Einfache Lösung: mach mal "Rebuild Remote Container" in VS Code. Schlimmstenfalls musst du noch das Volumen löschen, aber das sollte eigentlich automatisch geschehen.
-
@UncleSam
auch schon gemacht. (also rebuild, oder container gelöscht und sogar die images gelöscht und neu runtergeladen.)
wie gesagt. ich verwende unverändert die daten die der adapter-creator erzeugt und baue daraus ein container.
iobroker startet erst, wenn ich manuell einen admin adapter hinzufüge (dann habe ich 2, wie oben beschrieben), ohne das Fehlermeldung wie oben beschrieben. -
@OliverIO Komisch, ich habe genau dasselbe vorgestern gemacht und das funktioniert. Kannst du sonst mal diesen Adapter herunterladen und versuchen, ob du den in Devcontainer öffnen kannst?
https://github.com/UncleSamSwiss/ioBroker.luxtronik2 -
@UncleSam
Ergebnis ist identisch. Bei Aufruf von http://localhost:8082/ kommt Bad gateway.
Wenn ich dann auf der console mir das logfile anschaue, dann wieder diese Fehlermeldungwarn: host.iobroker-luxtronik2 does not start any instances on this host
wenn ich dann noch einen admin adapter hinzufüge mit iob add admin
kann ich über den browser den iobroker aufrufen, hab dann 2 admin instanzen 0 und 1.
0 ist inaktivwenn es bei euch funktioniert, muss es ja noch an irgendwelchen Einstellungen liegen. Aber eigentlich ist doch alles in docker gekapselt
-
Nachtrag: Es scheint an postCreateCommand zu liegen.
Kommentiere ich diese komplett aus, dann läuft iobroker auf anhieb.
Sobald irgendein 'Befehl drin steht, dann ist es vorbei.
In einem anderen Thread, ich meine da ging es zum Zeitpunkt der Erstellung des buanet-docker-images, hat @AlCalzone geschrieben, das jeder einzelne Befehl intern in einem virtuellen Container ausgeführt wird und deswegen die Hostname sich dort jeweils ändert und es dadruch zu Problemen kommt da iobroker denk es sei ein multihost system und daher die obige warnung ausgibt. -
@OliverIO sagte in VisualStudio Code und Devcontainer:
das jeder einzelne Befehl intern in einem virtuellen Container ausgeführt wird und deswegen die Hostname sich dort jeweils ändert und es dadruch zu Problemen kommt
Das gilt nur für das erstellen eines Images, das hat nichts mit dem
postCreateCommand
zu tun, der wird von VS Code im fertigen Container ausgeführt.Komisch ist, dass das nur bei dir auftritt. Was für ein OS, Docker Version und VS Code Version hast du?