2016-12-04 202 views
2

我正在閱讀this article關於在Jenkins能夠自行構建Docker鏡像的情況下設置運行在Docker容器中的Jenkins。儘管此解決方案有效,但作者也指出了一些安全問題。在Docker容器中運行的Jenkins構建Docker鏡像

主要的安全問題在於Jenkins需要運行Docker命令,這需要在Jenkins容器中加載一個Docker套接字(加上Jenkins需要sudo才能運行Docker命令)。因此,任何訪問Jenkins Web界面的人都可以運行任何可以完全訪問主機系統的命令(通過運行Docker容器)。

因此,我想知道如果我有人有一些想法,使此設置更安全。由於Jenkins仍然需要能夠執行Docker命令(使用sudo)來構建新映像,讓Jenkins用戶仍然能夠啓動,所以在Docker容器內部(但直接在主機系統上)運行Jenkins似乎並不安全。任何任意的容器。使用防火牆可以限制Jenkins可以訪問的IP地址,但我希望可能有其他一些解決方案來降低安全風險。

編輯 我忘了提Jenkins也應該能夠在同一臺機器上啓動(新創建的)容器。

回答

0

Docker遠程API公開了各種端點來處理創建,列表,檢查等圖像,請參閱https://docs.docker.com/engine/reference/api/docker_remote_api_v1.24/#/images

作爲構建步驟調用端點https://docs.docker.com/engine/reference/api/docker_remote_api_v1.24/#/create-an-image可能有助於從Dockerfile構建圖像。

+0

我不知道,如果這種做法將使詹金斯創建容器,隨後與各種參數,如卷安裝等運行同一臺主機上的圖像 – Koningh

相關問題