在docker中,當容器必須與外部系統進行通信時,如何在一般情況下配置known_hosts,authorized_keys和ssh連接的需求範圍?Docker,如何處理SSH密鑰,known_hosts和authorized_keys
例如,我運行詹金斯容器,並嘗試從GitHub籤項目中工作,但連接失敗,出現錯誤host key verification failed
這可以通過登錄到容器來解決,連接到手動和信任的GitHub提示時顯示主機密鑰。然而,這不是一個合適的解決方案,因爲所有事情都需要100%自動化(我正在建造CI管道,並配備了安全和碼頭工人)。另一個(笨重的)解決方案是將正在運行的容器配置成合理的,但這會使事情變得混亂並且難以維護。 Jenkins容器甚至沒有ssh守護進程,我不確定如何從其他主機ssh進入容器。第三種選擇是使用我自己的Dockerfile擴展jenkins映像,其中配置了ssh,但是這會硬編碼並將容器鎖定到這個特定的環境。
那麼碼頭管理(和自動化)與外部系統連接的正確方式是什麼?
這似乎是可行的選項,在jenkins容器派生的Dockerfile中運行。但是有可能運行官方jenkins容器,並且在啓動容器時注入了這些主機密鑰,以及一些環境變量或其他東西?如果沒有,那麼我需要爲CI環境構建定製jenkins容器。 –