Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. VisualStudio Code und Devcontainer

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.6k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.9k

VisualStudio Code und Devcontainer

Geplant Angeheftet Gesperrt Verschoben Entwicklung
vscoderemotedockeradapter entwicklung
127 Beiträge 13 Kommentatoren 20.1k Aufrufe 22 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • UncleSamU UncleSam

    @Asgothian sagte in VisualStudio Code und Devcontainer:

    Ich hatte mir das .devcontainer Verzeichnis von @UncleSam geholt (vom iobroker.loxone adapter) und angepasst.

    Er voilà, da haben wir den Fehler. Den Loxone Adapter habe ich noch nicht auf den neusten Stand von create-adaper gebracht. Nimm bitte entweder i2c oder create-adaper und schau dir die Migrationshilfen in create-adapter an.

    AsgothianA Offline
    AsgothianA Offline
    Asgothian
    Developer
    schrieb am zuletzt editiert von Asgothian
    #37

    @UncleSam

    Schwere Geburt. Aber - es geht jetzt. Ich hab den Adapter im Container aktiv, und kann also jetzt mal versuchen mich da entsprechend zu verbinden.

    Für die Hilfe schon einmal vielen Dank.

    Jetzt bleibt noch eine Frage: Beim Zigbee Adapter kann es vorkommen das ich zusätzlich auch in einer der verwendeten Bibliotheken Änderungen machen muss. Dazu habe ich auch davon einen Github Fork. In meinem aktuellen Workflow lade ich die geänderten Daten von Hand von meinem Entwicklungsrechner in den ioBroker. Das kann ich im Moment nicht, da ich nicht direkt auf das Dateisystem im Container zugreifen kann.

    Hast Du dafür einen Vorschlag für mich ?

    A.

    ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
    "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

    1 Antwort Letzte Antwort
    0
    • UncleSamU UncleSam

      In Discord/Telegram ist reges Interesse an Devcontainer vorhanden, deshalb versuche ich hier einige Sachen zu (er)klären.

      Wie kann ich Devcontainer in meinem Adapter nützen?

      Wenn's geht empfehlen wir immer den Adapter Creator (npx @iobroker/create-adapter) zu nutzen. Wenn das für euren Adapter nicht in Frage kommt, könnt ihr das .devcontainer Verzeichnis von meinem Adapter kopieren und überall den Namen "Loxone" durch euren Adapternamen ersetzen.

      Zudem empfehle ich folgende zwei Dateien in VS Code zu ergänzen oder erstellen:

      • launch.json: dies ermöglicht ganz einfach per F5 den Adapter zu starten (siehe unten)
      • tasks.json: mit dem "Install Adapter" Task kann man ohne in die Kommandozeile abzutauchen den aktuellsten Stand als Adapter in ioBroker installieren

      Was brauche ich für Devcontainer?

      Microsoft beschreibt dies sehr schön in ihrem Getting Started.

      Ich habe alles auf meinem Windows 10 Professional mit WSL2 (Windows Subsystem for Linux) getestet, dort läuft es einwandfrei.

      Wie starte ich Devcontainer?

      Wenn alle Vorbedingungen erfüllt sind (siehe oben) könnt ihr ganz einfach das Hauptverzeichnis (nicht das .devcontainer-Verzeichnis!) auf eurem PC in Visual Studio Code öffnen ("Ordner öffnen"), dabei fragt VS Code, ob man das Verzeichnis in Remote Container öffnen möchte:
      339362a0-912e-425b-a407-4c5c69de9521-image.png
      Einfach auf "Reopen in Container" klicken und warten :-)

      Falls ihr dabei den folgenden Fehler seht (Messagebox und Konsole beachten!), habt ihr irgendwo noch eine Instanz von ioBroker (oder sonstwas) auf Port 8082* auf eurem PC am laufen:
      55e4d5a1-a7a9-4858-8d8d-2c5a91248d40-image.png
      Es ist zu beachten, dass nur ein "Devcontainer" mit ioBroker auf's mal laufen kann, da Port 8082* nicht nur im Container sondern auf eurem PC benutzt wird.

      *= Der Port, auf welchem ioBroker zur Verfügung steht, kann in der Datei docker-compose.yml angepasst werden. Mehr Informationen sind in der Datei .devcontainer/README.md zu finden.

      Wie greife ich nun auf ioBroker zu?

      Im Devcontainer (docker-compose) läuft ioBroker sobald der Devcontainer gestartet ist. Wenn ihr an der Konfiguration nichts geändert habt, ist ioBroker unter http://localhost:8082 zu erreichen.

      Wie entwickle ich im Devcontainer?

      Das ist das schöne an Devcontainer: die Entwicklung funktioniert exakt wie bisher. Je nachdem müsst ihr noch VS Code Extensions im Container installieren, aber ansonsten merkt man vom Container gar nichts. In Tat und Wahrheit läuft aber der Grossteil von VS Code im Container und gar nicht mehr direkt auf eurem PC.
      Extensions wie eslint und prettier funktionieren weiterhin einwandfrei; je nach Extension läuft sie auf dem PC oder im Container.

      Wie starte ich meinen Adapter das erste mal?

      Der Adapter wird automatisch beim ersten mal Starten von Devcontainer installiert. Es muss einzig noch eine Instanz erstellt werden (vorzugsweise mit Index=0).
      Mit dem oben erwähnten Task (Ctrl-Shift-P -> Tasks: Run Task -> "Install Adapter") wird der aktuelle Stand des Source Codes in ein NPM Paket verpackt und in ioBroker (im Container) installiert. Danach kann man den Adapter ganz einfach im Web GUI konfigurieren. Zum starten empfehle ich gleich das Debugging (siehe unten) zu nutzen, es ist aber natürlich auch möglich, den Adapter ganz normal in ioBroker zu starten.

      Wie debugge ich im Devcontainer?

      Ich nutze dafür die oben bereits erwähnte Launch Konfiguration. Damit kann ich per F5 (oder über den Debug-Tab) den Adapter im Debug-Modus starten. Der Adapter sollte natürlich nicht laufen bevor man F5 drückt.

      Was mache ich, wenn nichts mehr geht?

      Wenn doch mal ein Devcontainer irgendwo hängt, kann man das über das Docker-Dashboard nachvollziehen. Einfach rechts-Klick auf das Docker Symbol unten rechts in der Taskleiste von Windows und dann "Dashboard" auswählen:
      a8a0d0ef-cc2c-46c9-b291-f0dad862754b-image.png
      df01a2dd-27bc-4fc5-b758-c9234ec64ba1-image.png

      OliverIOO Offline
      OliverIOO Offline
      OliverIO
      schrieb am zuletzt editiert von OliverIO
      #38

      @UncleSam sagte in VisualStudio Code und Devcontainer:

      Wenn's geht empfehlen wir immer den Adapter Creator (npx @iobroker/create-adapter) zu nutzen

      Ich wollte nochmal nachfragen, da ich gerade auch am rumprobieren bin:
      Man braucht aber dann auf jeden Fall eine Node-Installation unter Windows (und nur dafür) um den adapter-creator aufzurufen, der einem dann die Anfangsdateien für den Container und vs code erstellt?

      Wäre es nicht besser dafür ein basis image zur Verfügung zu stellen und erst im container dann adapter-creator auszuführen für ein (oder auch weitere adapter)?

      Meine Adapter und Widgets
      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
      Links im Profil

      AsgothianA AlCalzoneA 2 Antworten Letzte Antwort
      0
      • OliverIOO OliverIO

        @UncleSam sagte in VisualStudio Code und Devcontainer:

        Wenn's geht empfehlen wir immer den Adapter Creator (npx @iobroker/create-adapter) zu nutzen

        Ich wollte nochmal nachfragen, da ich gerade auch am rumprobieren bin:
        Man braucht aber dann auf jeden Fall eine Node-Installation unter Windows (und nur dafür) um den adapter-creator aufzurufen, der einem dann die Anfangsdateien für den Container und vs code erstellt?

        Wäre es nicht besser dafür ein basis image zur Verfügung zu stellen und erst im container dann adapter-creator auszuführen für ein (oder auch weitere adapter)?

        AsgothianA Offline
        AsgothianA Offline
        Asgothian
        Developer
        schrieb am zuletzt editiert von
        #39

        @OliverIO du kannst das tun was ich getan hab:

        • den container von buanet laden,
        • starten.. in die Konsole gehen,
        • da den adapter creator aufrufen,
        • Daten kopieren, dann weiter machen.

        ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
        "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

        OliverIOO 1 Antwort Letzte Antwort
        0
        • AsgothianA Asgothian

          @OliverIO du kannst das tun was ich getan hab:

          • den container von buanet laden,
          • starten.. in die Konsole gehen,
          • da den adapter creator aufrufen,
          • Daten kopieren, dann weiter machen.
          OliverIOO Offline
          OliverIOO Offline
          OliverIO
          schrieb am zuletzt editiert von OliverIO
          #40

          @Asgothian
          so ähnlich habe ich das gemacht:
          1.) neuer Ordner irgendwo in Windows angelegt
          2) VS code lokal geöffnet (also normal geöffnet) und den obigen Ordner als Workspace geöffnet
          3) Dann Befehl "add Developement container configuration files" ausgeführt
          4) Dann die Inhalte gegen die 3 Dateien aus dem loxone-Adapter ersetzt und überall wo "loxone" steht gegen "dev" getauscht. Wenn man vis nutzen möchte sollte auch der port 8082 in docker-compose noch geöffnet werden
          5) Rebuild container ausgeführt (das erste mal dauert, da so 300-500MB heruntergeladen werden, festplattenspeicher sollte man auch ordentlich frei haben, da das endgültige Image ca 1,2GB groß ist und buanet ebenfalls noch da ist. )
          6) Ergebnis: Container startete und iobroker lief
          7) Dann create-adapter remote im workspace ordner ausgeführt
          8 ) dann workspace auf den neu erzeugten ordner gesetzt (open folder)
          9) dann rebuild container ausgeführt
          10) nun ist das problem, das zwar 2 container laufen (iobroker und nginx), aber iobroker nicht erreichbar ist und im gegensatz zu oben steht in der statuszeile von vscode nun "0 ports available" steht.

          Ergänzung nach weiteren 2h:
          also ich habe jetzt einige zeit mit der Konfiguration direkt aus dem create-adapter rumprobiert.
          die container laufen zwar, aber ich komme mit dem browser einfach nicht drauf.
          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.
          wenn ich noch das access_log und das error_log dazu konfiguriere, dann kommt da kein zugriff an. das errorlog zeigt keinen fehler an.

          daher switche ich nochmal zur oben beschriebenen Schrittanleitung bis Schritt 7 um, da funktioniert für mich alles. auch die admin-oberfläche

          Was ist nochmal der Grund warum der nginx als reverse proxy hier eingesetzt wird?

          sorry für den langen post, habe aber die Schrittanleitung etwas ausgebaut, damit andere das ebenfalls nachvollziehen können.

          Meine Adapter und Widgets
          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
          Links im Profil

          1 Antwort Letzte Antwort
          0
          • OliverIOO OliverIO

            @UncleSam sagte in VisualStudio Code und Devcontainer:

            Wenn's geht empfehlen wir immer den Adapter Creator (npx @iobroker/create-adapter) zu nutzen

            Ich wollte nochmal nachfragen, da ich gerade auch am rumprobieren bin:
            Man braucht aber dann auf jeden Fall eine Node-Installation unter Windows (und nur dafür) um den adapter-creator aufzurufen, der einem dann die Anfangsdateien für den Container und vs code erstellt?

            Wäre es nicht besser dafür ein basis image zur Verfügung zu stellen und erst im container dann adapter-creator auszuführen für ein (oder auch weitere adapter)?

            AlCalzoneA Offline
            AlCalzoneA Offline
            AlCalzone
            Developer
            schrieb am zuletzt editiert von
            #41

            @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.

            Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

            OliverIOO 1 Antwort Letzte Antwort
            0
            • AlCalzoneA AlCalzone

              @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.

              OliverIOO Offline
              OliverIOO Offline
              OliverIO
              schrieb am zuletzt editiert von
              #42

              @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 erreichbar

              Wenn du noch weitere Dateien benötigst, sag Bescheid.

              Datei .devcontainer

              // For format details, see https://aka.ms/vscode-remote/devcontainer.json or this file's README at:
              // https://github.com/microsoft/vscode-dev-containers/tree/v0.101.1/containers/docker-existing-docker-compose
              // If you want to run as a non-root user in the container, see .devcontainer/docker-compose.yml.
              {
                  "name": "ioBroker Docker Compose",
              
                  // Update the 'dockerComposeFile' list if you have more compose files or use different names.
                  // The .devcontainer/docker-compose.yml file contains any overrides you need/want to make.
                  "dockerComposeFile": [ "docker-compose.yml" ],
              
                  // The 'service' property is the name of the service for the container that VS Code should
                  // use. Update this value and .devcontainer/docker-compose.yml to the real service name.
                  "service": "iobroker",
              
                  // The optional 'workspaceFolder' property is the path VS Code should open by default when
                  // connected. This is typically a file mount in .devcontainer/docker-compose.yml
                  "workspaceFolder": "/workspace",
              
                  // Set *default* container specific settings.json values on container create.
                  "settings": {},
              
                  // Add the IDs of extensions you want installed when the container is created.
                  "extensions": ["dbaeumer.vscode-eslint"],
              
                  // Uncomment the next line if you want start specific services in your Docker Compose config.
                  // "runServices": [],
              
                  // Uncomment the next line if you want to keep your containers running after VS Code shuts down.
                  // "shutdownAction": "none",
              
                  // When creating the container, delete unnecessary adapters, disable error reporting, set the license as confirmed, and install/update this adapter
                  "postCreateCommand": "iob del discovery && iob plugin disable sentry && iob object set system.config common.licenseConfirmed=true && NPM_PACK=$(npm pack) && iob url \"$(pwd)/$NPM_PACK\" --debug && rm \"$NPM_PACK\""
              
                  // Uncomment to connect as a non-root user. See https://aka.ms/vscode-remote/containers/non-root.
                  //"remoteUser": "iobroker"
              }
              

              Datei docker-compose

              version: '3'
              
              services:
                  iobroker:
                      build: ./iobroker
                      container_name: iobroker-mytest
                      hostname: iobroker-mytest
                      # This port is only internal, so we can work on this while another instance of ioBroker is running on the host
                      expose:
                          - 8081
                      volumes:
                          - ..:/workspace:cached
                          - iobrokerdata-mytest:/opt/iobroker
                      environment:
                          - LANG=en_US.UTF-8
                          - LANGUAGE=en_US:en
                          - LC_ALL=en_US.UTF-8
                          - TZ=Europe/Berlin
                          - SETGID=1000
              
                  # Reverse proxy to load up-to-date admin sources from the repo
                  nginx:
                      image: nginx:latest
                      depends_on:
                          - iobroker
                      links:
                          - iobroker
                      container_name: nginx-mytest
                      volumes:
                          - ./nginx/nginx.conf:/etc/nginx/nginx.conf
                          - ..:/workspace:cached
                      ports:
                          # Make the ioBroker admin available under http://localhost:8082
                          - 8082:80
              
              volumes:
                  iobrokerdata-mytest:
              

              Meine Adapter und Widgets
              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
              Links im Profil

              AlCalzoneA 1 Antwort Letzte Antwort
              0
              • OliverIOO OliverIO

                @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 erreichbar

                Wenn du noch weitere Dateien benötigst, sag Bescheid.

                Datei .devcontainer

                // For format details, see https://aka.ms/vscode-remote/devcontainer.json or this file's README at:
                // https://github.com/microsoft/vscode-dev-containers/tree/v0.101.1/containers/docker-existing-docker-compose
                // If you want to run as a non-root user in the container, see .devcontainer/docker-compose.yml.
                {
                    "name": "ioBroker Docker Compose",
                
                    // Update the 'dockerComposeFile' list if you have more compose files or use different names.
                    // The .devcontainer/docker-compose.yml file contains any overrides you need/want to make.
                    "dockerComposeFile": [ "docker-compose.yml" ],
                
                    // The 'service' property is the name of the service for the container that VS Code should
                    // use. Update this value and .devcontainer/docker-compose.yml to the real service name.
                    "service": "iobroker",
                
                    // The optional 'workspaceFolder' property is the path VS Code should open by default when
                    // connected. This is typically a file mount in .devcontainer/docker-compose.yml
                    "workspaceFolder": "/workspace",
                
                    // Set *default* container specific settings.json values on container create.
                    "settings": {},
                
                    // Add the IDs of extensions you want installed when the container is created.
                    "extensions": ["dbaeumer.vscode-eslint"],
                
                    // Uncomment the next line if you want start specific services in your Docker Compose config.
                    // "runServices": [],
                
                    // Uncomment the next line if you want to keep your containers running after VS Code shuts down.
                    // "shutdownAction": "none",
                
                    // When creating the container, delete unnecessary adapters, disable error reporting, set the license as confirmed, and install/update this adapter
                    "postCreateCommand": "iob del discovery && iob plugin disable sentry && iob object set system.config common.licenseConfirmed=true && NPM_PACK=$(npm pack) && iob url \"$(pwd)/$NPM_PACK\" --debug && rm \"$NPM_PACK\""
                
                    // Uncomment to connect as a non-root user. See https://aka.ms/vscode-remote/containers/non-root.
                    //"remoteUser": "iobroker"
                }
                

                Datei docker-compose

                version: '3'
                
                services:
                    iobroker:
                        build: ./iobroker
                        container_name: iobroker-mytest
                        hostname: iobroker-mytest
                        # This port is only internal, so we can work on this while another instance of ioBroker is running on the host
                        expose:
                            - 8081
                        volumes:
                            - ..:/workspace:cached
                            - iobrokerdata-mytest:/opt/iobroker
                        environment:
                            - LANG=en_US.UTF-8
                            - LANGUAGE=en_US:en
                            - LC_ALL=en_US.UTF-8
                            - TZ=Europe/Berlin
                            - SETGID=1000
                
                    # Reverse proxy to load up-to-date admin sources from the repo
                    nginx:
                        image: nginx:latest
                        depends_on:
                            - iobroker
                        links:
                            - iobroker
                        container_name: nginx-mytest
                        volumes:
                            - ./nginx/nginx.conf:/etc/nginx/nginx.conf
                            - ..:/workspace:cached
                        ports:
                            # Make the ioBroker admin available under http://localhost:8082
                            - 8082:80
                
                volumes:
                    iobrokerdata-mytest:
                

                AlCalzoneA Offline
                AlCalzoneA Offline
                AlCalzone
                Developer
                schrieb am zuletzt editiert von AlCalzone
                #43

                @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.

                Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                OliverIOO 1 Antwort Letzte Antwort
                0
                • EdgarME Offline
                  EdgarME Offline
                  EdgarM
                  Developer
                  schrieb am zuletzt editiert von
                  #44

                  @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

                  bisher produktive Zentralen: FHEM,openhab,node-red, homeassistant
                  Geräte von: Homematic (ca 20 ), Hue(15),Osram(10),tradfri(10), shelly(4), aqara(20+)

                  1 Antwort Letzte Antwort
                  0
                  • AlCalzoneA AlCalzone

                    @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.

                    OliverIOO Offline
                    OliverIOO Offline
                    OliverIO
                    schrieb am zuletzt editiert von
                    #45

                    @AlCalzone

                    @OliverIO sagte in VisualStudio Code und Devcontainer:

                    wenn ich localhost:8082 aufrufe kommt bad gateway.

                    auch hier unverändert, wie ich oben geschrieben habe.

                    Meine Adapter und Widgets
                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                    Links im Profil

                    EdgarME AlCalzoneA 2 Antworten Letzte Antwort
                    0
                    • OliverIOO OliverIO

                      @AlCalzone

                      @OliverIO sagte in VisualStudio Code und Devcontainer:

                      wenn ich localhost:8082 aufrufe kommt bad gateway.

                      auch hier unverändert, wie ich oben geschrieben habe.

                      EdgarME Offline
                      EdgarME Offline
                      EdgarM
                      Developer
                      schrieb am zuletzt editiert von EdgarM
                      #46

                      @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
                      

                      bisher produktive Zentralen: FHEM,openhab,node-red, homeassistant
                      Geräte von: Homematic (ca 20 ), Hue(15),Osram(10),tradfri(10), shelly(4), aqara(20+)

                      1 Antwort Letzte Antwort
                      1
                      • OliverIOO OliverIO

                        @AlCalzone

                        @OliverIO sagte in VisualStudio Code und Devcontainer:

                        wenn ich localhost:8082 aufrufe kommt bad gateway.

                        auch hier unverändert, wie ich oben geschrieben habe.

                        AlCalzoneA Offline
                        AlCalzoneA Offline
                        AlCalzone
                        Developer
                        schrieb am zuletzt editiert von
                        #47

                        @OliverIO sagte in VisualStudio Code und Devcontainer:

                        auch hier unverändert, wie ich oben geschrieben habe.

                        Dann zeig mir bitte noch deine nginx.conf

                        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                        OliverIOO 1 Antwort Letzte Antwort
                        0
                        • EdgarME Offline
                          EdgarME Offline
                          EdgarM
                          Developer
                          schrieb am zuletzt editiert von
                          #48

                          Bei mir war es ein echter Fehler im Adapter.

                          grüße
                          E

                          bisher produktive Zentralen: FHEM,openhab,node-red, homeassistant
                          Geräte von: Homematic (ca 20 ), Hue(15),Osram(10),tradfri(10), shelly(4), aqara(20+)

                          1 Antwort Letzte Antwort
                          0
                          • AlCalzoneA AlCalzone

                            @OliverIO sagte in VisualStudio Code und Devcontainer:

                            auch hier unverändert, wie ich oben geschrieben habe.

                            Dann zeig mir bitte noch deine nginx.conf

                            OliverIOO Offline
                            OliverIOO Offline
                            OliverIO
                            schrieb am zuletzt editiert von OliverIO
                            #49

                            @AlCalzone

                            Auch hier nix verändert, stammt alles so aus dem adapter-creator.

                            nginx.conf

                            worker_processes 1;
                            events { worker_connections 1024; }
                            
                            http {
                              sendfile           on;
                              keepalive_timeout  65;
                            
                              server {
                                listen 80;
                            
                                location / {
                                  proxy_redirect off;
                                  proxy_pass     http://iobroker:8081;
                                }
                            
                                location /socket.io/ {
                                  proxy_pass         http://iobroker:8081;
                                  proxy_http_version 1.1;
                                  proxy_set_header   Upgrade $http_upgrade;
                                  proxy_set_header   Connection "Upgrade";
                                }
                            
                                location /adapter/mytest/ {
                                  alias /workspace/admin/;
                                }
                                access_log /var/log/nginx/accessx.log combined;
                              }
                            }
                            error_log /var/log/nginx/errorx.log warn;
                            

                            Ich denke nicht das es an nginx liegt, siehe mein nächsten Post

                            Meine Adapter und Widgets
                            TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                            Links im Profil

                            OliverIOO 1 Antwort Letzte Antwort
                            0
                            • OliverIOO OliverIO

                              @AlCalzone

                              Auch hier nix verändert, stammt alles so aus dem adapter-creator.

                              nginx.conf

                              worker_processes 1;
                              events { worker_connections 1024; }
                              
                              http {
                                sendfile           on;
                                keepalive_timeout  65;
                              
                                server {
                                  listen 80;
                              
                                  location / {
                                    proxy_redirect off;
                                    proxy_pass     http://iobroker:8081;
                                  }
                              
                                  location /socket.io/ {
                                    proxy_pass         http://iobroker:8081;
                                    proxy_http_version 1.1;
                                    proxy_set_header   Upgrade $http_upgrade;
                                    proxy_set_header   Connection "Upgrade";
                                  }
                              
                                  location /adapter/mytest/ {
                                    alias /workspace/admin/;
                                  }
                                  access_log /var/log/nginx/accessx.log combined;
                                }
                              }
                              error_log /var/log/nginx/errorx.log warn;
                              

                              Ich denke nicht das es an nginx liegt, siehe mein nächsten Post

                              OliverIOO Offline
                              OliverIOO Offline
                              OliverIO
                              schrieb am zuletzt editiert von
                              #50

                              @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?

                              Meine Adapter und Widgets
                              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                              Links im Profil

                              AlCalzoneA 1 Antwort Letzte Antwort
                              0
                              • OliverIOO OliverIO

                                @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?

                                AlCalzoneA Offline
                                AlCalzoneA Offline
                                AlCalzone
                                Developer
                                schrieb am zuletzt editiert von
                                #51

                                @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?

                                Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                OliverIOO 1 Antwort Letzte Antwort
                                0
                                • AlCalzoneA AlCalzone

                                  @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?

                                  OliverIOO Offline
                                  OliverIOO Offline
                                  OliverIO
                                  schrieb am zuletzt editiert von
                                  #52

                                  @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?

                                  Meine Adapter und Widgets
                                  TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                  Links im Profil

                                  AlCalzoneA 1 Antwort Letzte Antwort
                                  0
                                  • OliverIOO OliverIO

                                    @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?

                                    AlCalzoneA Offline
                                    AlCalzoneA Offline
                                    AlCalzone
                                    Developer
                                    schrieb am zuletzt editiert von
                                    #53

                                    @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.

                                    Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                    OliverIOO 1 Antwort Letzte Antwort
                                    0
                                    • AlCalzoneA AlCalzone

                                      @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.

                                      OliverIOO Offline
                                      OliverIOO Offline
                                      OliverIO
                                      schrieb am zuletzt editiert von OliverIO
                                      #54

                                      @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.

                                      Meine Adapter und Widgets
                                      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                      Links im Profil

                                      UncleSamU 1 Antwort Letzte Antwort
                                      0
                                      • OliverIOO OliverIO

                                        @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.

                                        UncleSamU Offline
                                        UncleSamU Offline
                                        UncleSam
                                        Developer
                                        schrieb am zuletzt editiert von
                                        #55

                                        @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.

                                        Bitte bei Problemen mit meinen Adaptern, Issue auf GitHub erfassen: Loxone | I2C | Luxtronik2
                                        ♡-lichen Dank an meine Sponsoren

                                        OliverIOO 1 Antwort Letzte Antwort
                                        0
                                        • UncleSamU UncleSam

                                          @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.

                                          OliverIOO Offline
                                          OliverIOO Offline
                                          OliverIO
                                          schrieb am zuletzt editiert von OliverIO
                                          #56

                                          @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.

                                          Meine Adapter und Widgets
                                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                          Links im Profil

                                          UncleSamU 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          723

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe