2015-07-19 21 views
1

我在我的OS X本地主機上運行Docker。我創建了一個開發」機器,我試圖運行在SSH命令到我的dev的機器:Docker-machine:如何正確執行ssh命令?

~$ docker-machine ssh dev -- ssh -o 'StrictHostKeyChecking no' \ 
    -i /Users/yves/.docker/machine/machines/dev/id_rsa \ 
    -N -L 5000:localhost:5000 [email protected] & 

我得到:

[1] 28171 
~$ exit status 255 

然後,我沒有得到任何提示回來。我需要使用CTRL-C,我得到:

[1]+ Exit 1 docker-machine ssh dev -- ssh -o 'StrictHostKeyChecking 
no' -i /Users/yves/.docker/machine/machines/dev/id_rsa 
-N -L 5000:localhost:5000 [email protected] 

有沒有辦法正確執行它? (使用boot2docker更容易,因爲要執行的命令被引用)。感謝您的反饋。

+0

'泊塢窗機ssh'恰恰有兩個參數;你不需要把所有的東西放在引號後面嗎? –

+0

似乎報價是不接受..需要使用 - 分隔符... 請參閱https://docs.docker.com/machine/子命令ssh(除非我讀錯了..) 如果命令你正在追加有標誌,例如df -h,您可以使用標誌解析​​終結符( - )來避免混淆docker-machine客戶端,否則這些客戶端會將它們解釋爲您打算傳遞給它的標誌: – erwin

+0

好的。我有一個類似的問題,用引號包裝是我得到它的唯一方法。 –

回答

1

你應該能夠只使用引號即:

ssh dev "ssh -o 'StrictHostKeyChecking no' \ 
     -i /Users/yves/.docker/machine/machines/dev/id_rsa \ 
     -N -L 5000:localhost:5000 [email protected] &"