Zugriff auf Filesystem vom Docker mit REST
Hallo Gemeinde,
ich wurde gerade vor ein Problem gestellt und tue mir schwer dahinter zu kommen wie ich es lösen könnte. Eigentlich ist es kein Hexenwerk trotzdem komme ich nicht weiter.
Demnächst werden wir Weblogic-Server in Docker-Container bekommen. Soweit kein Problem. Aus Sicherheitsgründen soll es aber nicht möglich sein direkt auf das Filesystem (mount) zuzugreifen. Unser Testsystem muss aber durchgehen den WLS ein xml-Datei zur Verfügung stelle die sich auch noch dazu dauerhaft ändert (z.B. Zugriffsrechte für Testuser). Jetzt habe ich das so verstanden, dass es mit einem REST-Service möglich sein sollte so einen Durchstich zu machen. Leider habe ich keine Erfahrung mit REST-Services und aus den Beschreibungen und Tutorials werde ich nicht so ganz schlau.
Könnt ihr mir da beim Einstig helfen?
Die xml-Datei wir lokal bei der Testausführung geändert. Das ist schon alles da. Sobald eine Änderung passiert ist, soll diese immer an der gleichen Stelle dem WLS zur Verfügung gestellt werden. Die Docker-Container werden nach Bedarf erstellt und bekommen dadurch immer einen neuen Namen oder ID. Dadurch ist der Pfad nicht immer gleich.
So wie ich es verstehen müsste man immer erst auslesen wie der Container "heißt" und das in den Pfad einfügen und danach kopieren.
Wir könnte man das lösen?
Sollte die Beschreibung nicht so präzise sein entschuldigt bitte, ist echt komplett neue Materie für mich.
Danke schon jetzt für eure Hilfe!
Grüße
Barry
ich wurde gerade vor ein Problem gestellt und tue mir schwer dahinter zu kommen wie ich es lösen könnte. Eigentlich ist es kein Hexenwerk trotzdem komme ich nicht weiter.
Demnächst werden wir Weblogic-Server in Docker-Container bekommen. Soweit kein Problem. Aus Sicherheitsgründen soll es aber nicht möglich sein direkt auf das Filesystem (mount) zuzugreifen. Unser Testsystem muss aber durchgehen den WLS ein xml-Datei zur Verfügung stelle die sich auch noch dazu dauerhaft ändert (z.B. Zugriffsrechte für Testuser). Jetzt habe ich das so verstanden, dass es mit einem REST-Service möglich sein sollte so einen Durchstich zu machen. Leider habe ich keine Erfahrung mit REST-Services und aus den Beschreibungen und Tutorials werde ich nicht so ganz schlau.
Könnt ihr mir da beim Einstig helfen?
Die xml-Datei wir lokal bei der Testausführung geändert. Das ist schon alles da. Sobald eine Änderung passiert ist, soll diese immer an der gleichen Stelle dem WLS zur Verfügung gestellt werden. Die Docker-Container werden nach Bedarf erstellt und bekommen dadurch immer einen neuen Namen oder ID. Dadurch ist der Pfad nicht immer gleich.
So wie ich es verstehen müsste man immer erst auslesen wie der Container "heißt" und das in den Pfad einfügen und danach kopieren.
Wir könnte man das lösen?
Sollte die Beschreibung nicht so präzise sein entschuldigt bitte, ist echt komplett neue Materie für mich.
Danke schon jetzt für eure Hilfe!
Grüße
Barry
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 400598
Url: https://administrator.de/contentid/400598
Ausgedruckt am: 25.11.2024 um 03:11 Uhr
4 Kommentare
Neuester Kommentar
Hallo,
warum? Bedenke dass ein Docker Container ausschließlich im RAM läuft, d.h. sobald dieser beendet ist, sind auch alle Daten im Container weg.
Für persistente Daten wird auf jeden Fall ein Volume benötigt.
Mit WLS ist "Weblogic-Server" gemeint?
Klar. REST API ist sehr einfach. Wo hängt es?
Was für ein Pfad? Du greifst über die Ports auf die Applikation im Container zu.
Oder verstehe ich dich hier falsch?
Viele Grüße,
Exception
Aus Sicherheitsgründen soll es aber nicht möglich sein direkt auf das Filesystem (mount) zuzugreifen.
warum? Bedenke dass ein Docker Container ausschließlich im RAM läuft, d.h. sobald dieser beendet ist, sind auch alle Daten im Container weg.
Für persistente Daten wird auf jeden Fall ein Volume benötigt.
Unser Testsystem muss aber durchgehen den WLS ein xml-Datei zur Verfügung stelle die sich auch noch dazu dauerhaft ändert (z.B. Zugriffsrechte für Testuser).
Mit WLS ist "Weblogic-Server" gemeint?
Könnt ihr mir da beim Einstig helfen?
Klar. REST API ist sehr einfach. Wo hängt es?
Die Docker-Container werden nach Bedarf erstellt und bekommen dadurch immer einen neuen Namen oder ID. Dadurch ist der Pfad nicht immer gleich. So wie ich es verstehen müsste man immer erst auslesen wie der Container "heißt" und das in den Pfad einfügen und danach kopieren.
Wir könnte man das lösen?
Wir könnte man das lösen?
Was für ein Pfad? Du greifst über die Ports auf die Applikation im Container zu.
Oder verstehe ich dich hier falsch?
Viele Grüße,
Exception
Die Docker-Container werden nach Bedarf erstellt und bekommen dadurch immer einen neuen Namen oder ID. Dadurch ist der Pfad nicht immer gleich. So wie ich es verstehen müsste man immer erst auslesen wie der Container "heißt" und das in den Pfad einfügen und danach kopieren.
Wir könnte man das lösen?
Wir könnte man das lösen?
Was für ein Pfad? Du greifst über die Ports auf die Applikation im Container zu.
Oder verstehe ich dich hier falsch?
Direkt auf das Filesystem des Containers kannst du vom Host aus nicht zugreifen. Entweder ein Volume erstellen oder eben über die REST API die xml Datei beziehen. Bei dir kommt dann wohl nur das letztere in Frage.
Zu REST selbst findest du zahlreiche Tutorials im Netz. Zum Beispiel: https://www.restapitutorial.com/
Zum Testen von HTTP Requests brauchst du ein HttpClient. Da kann ich dir Postman sehr empfehlen.
Edit: Für WebLogic gibt es bereits fertige REST Clients. Das spart dir einiges an Programmierung:
https://www.oracle.com/technetwork/articles/soa/oliveira-wls-rest-javafx ...