Portainer aus dem Internet abschotten

  • Das entgleitet hier :)

    Ich hab doch nur ein Beispiel genommen. Kann jeder Container sein.


    Ist dann keine Aussage so richtig:

    Wenn ich jetztContainer XY mit NPM unter xy.domain.de erreichbar machen will, was soll ich dann als Port angeben, wenn ich vorher keine mehr angegeben habe.


    Nur nochmal als Erinnerung, das ganze läuft mit Portainer auf einem VPS und nicht im Heimnetzwerk.


    Vll. kann auch mal jemand seinen Portainer Screenshot schicken, denn ich vermute wir reden aneinander vorbei:)

  • Hallo Interessent, erstelle doch für deine Frage besser einen eigenen Thread, dann das hat inhaltlich ehrlich gesagt nichts mehr mit dem Ursprungsthema zu tun. Du scheinst hier ziemlich viele Sachen durcheinander zu werfen. Das sollten wir lieber mal im Detail wieder ordnen und klären. Aber dafür ist dieser Thread hier nicht wirklich der richtige Ort. In einem neuen Thread kannst du gerne nochmal alle Fragen stellen.

  • TBT Das Beispiel mit nextcloud kam nur von mir.


    Wenn ich jetztContainer XY mit NPM unter xy.domain.de erreichbar machen will, was soll ich dann als Port angeben, wenn ich vorher keine mehr angegeben habe.

    Ich nutze kein Portainer, aber das Grundprinzip ist trotzdem unverändert.


    Du möchtest, dass Portainer nur über deine Subdomain erreichbar ist. Daher darf Portainer sich auf keinen Port einer öffentlichen NIC binden. Daher am besten erst gar keinen Port angeben. (Wird bei Portainer sicher gehen).


    Portainer ist aber trotzdem erreichbar. Und zwar unter der internen Docker-IP-Adresse und dem Port, der vorher auf der rechten Seite vom Doppelpunkt stand (8000:8000). Jedoch nur innerhalb des Docker-Netzwerkes. Und in dem Netzwerk muss dann ein Reverse-Proxy sein. Dieser lauscht wiederum auf der öffentlichen NIC auf Port 80 und 443 (http/https). In diesem Reverse-Proxy musst du dann konfigurieren, dass Requests für xy.domain.de an die interne Adresse von Portainer weitergeleitet werden.

    VPS 500 G8 Plus | VPS Karneval 2020 | Webhosting EiWoMiSau


    Dieses Gebäude hat mir die Vorfahrt genommen! *hup*

  • Mach Dich nicht so an Portainer fest, sondern beschäftige Dich lieber auch mit den Systemtools. Und da ist einfach ein Docker Compose File sinnvoll / nötig.


    Portainer:

    portainer.png


    So sieht das für Portainer selbst (stellvertretend für die meisten anderen Container) bei mir aus (meinen Stacknamen habe ich verdeckt). Wie man an der letzten Stelle mit dem " - " sieht, ist da kein Port nach außen gelegt.


    NPM:

    npm.png


    Und so sieht der korrespondierende Teil in NPM aus (Domain verdeckt).


    Bedeutet: Portainer läuft in seinem Container auf Port 9000, dieser ist überhaupt nicht nach außen gelegt. NPM setzt die ungesicherte Adresse http://portainer:9000 auf eine SSL gesicherte und mit eigener Domain hinterlegte https://subdomain.domain.tld auf Port 443 (da Standardport für SSL keine Portangabe nötig) um.


    Damit das klappt, muss NPM im gleichen Docker Netz wie der Portainer Container sein, dass ist bei mir das separat angelegte "proxy_network". Logischerweise geht das so nicht aus dem Stand, sondern man muss erst mal den Port rauslegen, dann Portainer konfigurieren, dann NPM konfigurieren und testen obs auch mit https und Domain geht und wenn das geht, dann den exponierten Port 9000 wieder rausnehmen.

    RS Fast Rabbit OST21 (~RS 8000 G9) | RS Ostern L OST22 (~RS "3000" G9.5)

  • Danke an alle für die ausführlichen Erklärungen. Hat ein paar Versuche (Snapshot sei Dank) gebraucht. Aber ich glaube jetzt hab ich verstanden wie die Reihenfolge bei der Erstellung ist und wie es funktioniert.

  • Eigentlich kann man nicht viel kaputt machen, wenn etwas nicht passt, macht man den Container halt wieder platt und spawned ihn neu. Da brauchts eigentlich keinen Snapshot. Wenn Du die Systemtools selbst hinter den NPM packst, wäre die Verwendung der Konsole halt sinnvoll. Da kannst Du Dich nicht "aussperren".

    Nochmal: Docker kann/sollte man nicht alleine mit Portainer betreiben, sondern auch die Konsolenbefehle kennen. Soo viele sinds jetzt auch nicht.

    RS Fast Rabbit OST21 (~RS 8000 G9) | RS Ostern L OST22 (~RS "3000" G9.5)