Ich habe ein Setup mit einem Webserver (NGINX) und einem reag-basierten Frontend, das Webpack verwendet, um die endgültigen statischen Quellen zu erstellen.Wie wiederkehrende kurzlebige Aufgaben mit Kubernetes gehandhabt werden
Der Webserver hat ein eigenes Kubernetes deployment
+ service
.
Das Frontend muss erstellt werden, bevor der Webserver die statischen html/js/css-Dateien bereitstellen kann - aber danach kann die pod
/container
stoppen.
Meine Idee war eine volume
zwischen dem Webserver und dem Frontend pod
zu teilen. Das Frontend schreibt die erzeugten Dateien in die volume
und der Webserver kann sie von dort aus bedienen. Immer wenn ein Update für den Frontend-Quellcode vorliegt, müssen die Dateien neu generiert werden.
Was ist der beste Weg, um das mit Kubernetes Tools zu erreichen? Momentan benutze ich einen init-container
Build - aber das führt auch zu einem Neustart des Webservers pod
, was nicht nötig wäre.
Ist dies die beste/einzige Lösung für dieses Problem oder sollte ich Kubernetes 'jobs
für diese Art von Aufgaben verwenden?
für Option 2: Init-Container oder Job? Was ist das bessere Werkzeug? Könnte ich einfach einen Job erstellen, wenn sich die Quelle ändert? – pkyeck
init-container ist nur beim erstmaligen Erstellen einer Bereitstellung nützlich. Da ein statischer Server ausgeführt werden soll, passt ein Job, der das bestimmte Volume ändert, besser. – iamnat