"git push dokku" 一直要求输入 "dokku@..." 密码
"git push dokku" keeps asking for "dokku@..." password
在我的远程服务器上,我所做的是:
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 dokku@116.123.123.123:node-sample
ssh-keygen -f vincent
cat vincent.pub | ssh root@116.123.123.123 dokku ssh-keys:add git-deploy
(当我在我的远程服务器中 运行 ssh-keys:list 时,我可以看到 ssh 密钥)
仍在本地:
ssh-add vincent
然后当我运行:
git push dokku main
我收到:
dokku@116.123.123.123's password:
我不明白为什么它不建立 ssh 连接而是请求用户密码(不存在的用户)
所以您正在关注文章“Hosting NodeJs Apps on Your Own Heroku, Using Dokku" from Pedro Alonso
问题是:您正在为 SSH 密钥使用非默认命名约定(对您来说 vincent.pub
,文章中 dokku_rsa.pub
)
要git推动工作,您需要:
%USERPROFILE%/.ssh/config
文件设置为引用您的私钥
- 远程 URL 使用
.ssh/config
主机条目
也就是
# .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
然后 git push
将使用您的私钥。
来自 discussion and the , Vincent has found "SSH-Key authentication fails" 并做了:
sudo chown dokku:dokku /home/dokku/ -R
sudo chmod o-rwx /home/dokku/ -R
这足以让 dokku
SSH URL 工作。
在我的远程服务器上,我所做的是:
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 dokku@116.123.123.123:node-sample
ssh-keygen -f vincent
cat vincent.pub | ssh root@116.123.123.123 dokku ssh-keys:add git-deploy
(当我在我的远程服务器中 运行 ssh-keys:list 时,我可以看到 ssh 密钥)
仍在本地:
ssh-add vincent
然后当我运行:
git push dokku main
我收到:
dokku@116.123.123.123's password:
我不明白为什么它不建立 ssh 连接而是请求用户密码(不存在的用户)
所以您正在关注文章“Hosting NodeJs Apps on Your Own Heroku, Using Dokku" from Pedro Alonso
问题是:您正在为 SSH 密钥使用非默认命名约定(对您来说 vincent.pub
,文章中 dokku_rsa.pub
)
要git推动工作,您需要:
%USERPROFILE%/.ssh/config
文件设置为引用您的私钥- 远程 URL 使用
.ssh/config
主机条目
也就是
# .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
然后 git push
将使用您的私钥。
来自 discussion and the
sudo chown dokku:dokku /home/dokku/ -R
sudo chmod o-rwx /home/dokku/ -R
这足以让 dokku
SSH URL 工作。