在我的遠程服務器上,我所做的就是:
wget https://raw.githubusercontent.com/dokku/dokku/v0.26.6/bootstrap.sh;
sudo DOKKU_TAG=v0.26.6 bash bootstrap.sh
dokku apps:create node-sample
然后在我的本地機器上:
git clone https://github.com/pedropaf/node-sample-dokku
cd .\node-sample-dokku\
git remote add dokku [email protected]:node-sample
ssh-keygen -f vincent
cat vincent.pub | ssh [email protected] dokku ssh-keys:add git-deploy
(當我在遠程服務器中運行 ssh-keys:list 時,我可以看到 ssh 密鑰)
仍然在本地:
ssh-add vincent
然后當我運行時:
git push dokku main
我收到:
[email protected]'s password:
我不明白為什么它不建立 ssh 連接而是請求用戶密碼(用戶不存在)
uj5u.com熱心網友回復:
所以你正在關注Pedro Alonso的文章“在你自己的 Heroku 上托管 NodeJs 應用程式,使用 Dokku ”
問題是:您對 SSH 密鑰使用了非默認命名約定(vincent.pub對您而言,dokku_rsa.pub在文章中)
要使 git push 作業,您需要:
- 一個
%USERPROFILE%/.ssh/config檔案集來參考你的私鑰 - 使用
.ssh/configHost 條目的遠程 URL
那是
# .ssh/config
Host dokku
Hostname 116.123.123.123
User dokku
IdentityFile ~/.ssh/vincent
和:
cd /C/path/to/local/clone
git remote set-url dokku dokku:node-sample
然后 agit push將使用您的私鑰。
從討論和評論中,Vincent 發現“ SSH-Key authentication failed ”并且做了:
sudo chown dokku:dokku /home/dokku/ -R
sudo chmod o-rwx /home/dokku/ -R
這足以使dokkuSSH URL 作業。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/369446.html
