goo*_*oon 3 ruby ssh digital-ocean mina-deploy
我已添加服务器的 SSH 密钥以在 github 中部署密钥。
运行后mina deploy我得到以下信息:
-----> Quiet sidekiq (stop accepting new work)
/var/www/myproject/tmp/build-157262358827785
-----> Fetching new git commits
Run Code Online (Sandbox Code Playgroud)
它留在这里,什么也没有发生
当我按 ctrl + c 时,它会说
-----> Mina: SIGINT received.
Enter passphrase for key '/root/.ssh/id_rsa':
Elapsed time: 1931.59 seconds
Run Code Online (Sandbox Code Playgroud)
在我的deploy.rb文件中set :term_mode, nil,人们说你需要它,因为当输入 SSH 密码后挂起时,但我从来没有准备好,直到我在控制台中执行 ctrl + c 。
没有办法输入密码
编辑:
我-v为详细输出做了一个标志:
-----> Quiet sidekiq (stop accepting new work)
$ cd /var/www/myproject/current
$ if [ -f /var/www/myproject/shared/pids/sidekiq.pid ] && kill -0 `cat /var/www/myproject/shared/pids/sidekiq.pid` > /dev/null 2>&1; then
RAILS_ENV="production" bundle exec sidekiqctl quiet /var/www/myproject/shared/pids/sidekiq.pid
else
echo 'Skip quiet command (no pid file found)'
fi
/var/www/myproject/tmp/build-157288289226943
-----> Fetching new git commits
$ (cd "/var/www/myproject/scm" && git fetch "git@github.com:[company]/myproject.git" "dev:dev" --force)
Run Code Online (Sandbox Code Playgroud)
模拟显示-s该部分正在运行
if [ ! -d "/var/www/myproject/scm/objects" ]; then
echo "-----> Cloning the Git repository"
git clone "git@github.com:[company]/myproject.git" "/var/www/myproject/scm" --bare
else
echo "-----> Fetching new git commits"
(cd "/var/www/myproject/scm" && git fetch "git@github.com:[company]/myproject.git" "dev:dev" --force)
fi &&
Run Code Online (Sandbox Code Playgroud)
好的,我发现了这个已关闭的 github 问题:https ://github.com/mina-deploy/mina/issues/449
我发现我只需要添加set :execution_mode, :system到我的部署文件中。
github问题上的答案说它在常见问题解答中,但是,他们的措辞如下:
- Mina hangs after i type my password in
Mina assumes that you have set up the communication with your server through the public/private keys, not password. If you want to use the password you will have to change the execution mode:
Run Code Online (Sandbox Code Playgroud)
我什至从未被提示输入密码,所以我不知道这适用于我。我也使用 ssh 公钥/私钥(显然),所以他们的措辞方式很奇怪。也许是因为我对此不太有经验。
无论如何,如果有人遇到同样的问题 - 这就是答案。