我是Vagrant的新手,所以我正在採取嬰兒步驟來確保我理解這個過程。我想確保在開始在虛擬機中進行任何嚴肅的開發之前,我可以創建一個自定義包。目前,我只是使用官方的ubuntu/xenial64 Vagrant box,並配置它以便安裝nginx。你可以找到my step-by-step guide to this here。使用vagrant與準系統定製包時驗證失敗
我的自定義框工作正常。我使用vagrant package --output nginx.box
,然後使用vagrant box add nginx nginx.box
將我的自定義框添加到我的Vagrant安裝中。當我嘗試從自定義包中創建一個新盒子時,出現問題。
我創建一個新的目錄,並使用vagrant init nginx
創建我的自定義文件夾的副本,但是當我使用vagrant up
,流浪未能 身份驗證:
==> default: Waiting for machine to boot. This may take a few minutes...
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default: Warning: Connection reset. Retrying...
default: Warning: Remote connection disconnect. Retrying...
default: Warning: Connection reset. Retrying...
default: Warning: Remote connection disconnect. Retrying...
default: Warning: Connection reset. Retrying...
default: Warning: Remote connection disconnect. Retrying...
default: Warning: Connection reset. Retrying...
default: Warning: Remote connection disconnect. Retrying...
default: Warning: Connection reset. Retrying...
default: Warning: Remote connection disconnect. Retrying...
default: Warning: Authentication failure. Retrying...
default: Warning: Authentication failure. Retrying...
default: Warning: Authentication failure. Retrying...
如果我通過VirtualBox虛擬管理器連接到虛擬機,我被要求進行身份驗證,並且使用登錄名和密碼「vagrant」失敗。
我看過this question和this other question其中描述了類似的症狀,但我還沒有找到解決我的問題的答案。當我運行vagrant up --debug
時,虛擬機啓動後我重複得到this output。關鍵通道似乎是:
DEBUG ssh: == Net-SSH connection debug-level log END ==
INFO ssh: SSH not ready: #<Vagrant::Errors::SSHAuthenticationFailed:
SSH authentication failed! This is typically caused by the public/private
keypair for the SSH user not being properly set on the guest VM. Please
verify that the guest VM is setup with the proper public key, and that
the private key path for Vagrant is setup properly as well.>
需要什麼之前,我打包我的自定義對話框,以便任何開發人員將能夠使用它沒有對公共和私有密鑰執行任何巫術呢?
謝謝。這樣可行。 「流浪漢」現在已經完成。然而'流浪ssh'仍然會導致問題。我爲這個其他問題創建了一個[新問題](https://stackoverflow.com/q/45903812/1927589)。 –