簡體   English   中英

使用 docker 代理在 k8s 和管道上的 Jenkins

[英]Jenkins on k8s and pipeline with docker agent

我想在 k8s 后面運行我的 Jenkins。 我們可以使用任何標准的舵圖或我們自己的清單文件來實現這一點。 在這種情況下,Jenkins(僅限主機)將在容器(Pod)內運行。

現在我還想要一個使用 docker 代理的管道作業,如此所述

我越來越困惑,關於

  • 這個 docker 容器將如何以及在哪里運行(在 Jenkins 運行的同一節點上?假設節點容量已經結束,那么它需要在不同節點上運行 docker 代理)
  • Jenkins 如何進行身份驗證以在 k8s 節點上運行容器?
  • 我看到了 Kubernetes 插件/docker 插件。 但是這些插件預先創建容器(或者至少我們需要設置一個模板,它決定容器將如何啟動,將使用哪個圖像等等)並在 JNLP / ssh 的幫助下連接 Jenkins。 在這種情況下,我失去了將形象作為代理人的靈活性。
  • 更進一步,我還喜歡在隨代碼一起提供的 Dockerfile 的幫助下即時構建自定義圖像。 同一鏈接中提供了一個示例。

我相信這個文檔可以回答你所有的問題: https://devopscube.com/jenkins-build-agents-kubernetes/

使用這種方法,您不會失去靈活性,因為您的 Jenkins master 將動態創建 K8s pod。 是的,另外您需要 JNLP 身份驗證,但您可以將其視為邊車容器。

關於您的第一個問題:如果您使用這種方式,您的 Jenkins 作業將在 Jenkins 主控下運行,並且您的 Z2E3ADAE54334C0A3AACE25 使用相同的 Docker。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM