2017-07-29 122 views
0

我開始使用Docker,特別是docker-compose。當構建容器和它的服務時,我希望能夠使用主機SSH密鑰,以便我可以從一些私人回購協議中提取。我嘗試添加像下面的體積,但是這似乎並不奏效docker-compose和ssh卷

version: "2.0" 
    services: 
    my-service: 
    build: 
     context: . 
    args: 
     arg_1: arg1 
     arg_2: arg2 
    volumes: 
     - ~/.ssh:/root/.ssh 

在克隆回購我的錯誤

ssh_askpass: exec(/usr/bin/ssh-askpass): No such file or directory 

並登錄到容器中時的鍵不存在。我是否錯誤地接近了這個?

謝謝

+0

您是否嘗試編寫完整的本地路徑,而不是使用〜/ .ssh? –

+0

發佈您的Dockerfile的內容 –

回答

0

您使用哪種操作系統?請注意,在某些系統上有額外的虛擬化層,並且〜/ .ssh路徑可以引用該虛擬機。

例如,在Windows 7上,您可以通過docker-machine命令管理這些機器。

+0

我使用Mac ..... – Richlewis

+0

據我所知Mac將虛擬機用作碼頭主機。您按卷掛載的目錄實際上是該虛擬機上的目錄,而不是您的主機。 – lukjar

+0

啊對...我會嘗試修改路徑 – Richlewis