在我的遠程服務器上,我所做的就是:
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 連接而是請求用戶密碼(用戶不存在)
所以你正在關注Pedro Alonso的文章“在你自己的 Heroku 上託管 NodeJs 應用程序,使用 Dokku ”
問題是:您對 SSH 密鑰使用了非默認命名約定(vincent.pub
對您而言,dokku_rsa.pub
在文章中)
要使 git push 工作,您需要:
%USERPROFILE%/.ssh/config
文件集來引用你的私鑰.ssh/config
Host 條目的遠程 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
這足以使dokku
SSH URL 工作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句