我试图在Ubuntu 15.10上使用MagePHP部署Symfony2 PHP项目,但它在执行时总是要求我提供SSH用户密码:
sudo php vendor/andres-montanez/magallanes/bin/mage deploy to:staging
当检查日志时,我可以看到它停在以下命令:
ssh -p 22 -q -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no ssh-user@my-domain.com "sh -c '"mkdir -p /customers/489176_10999/websites/my_company/symfony/staging/releases/20160902094526'""
单独执行此命令可以正常工作(因此服务器接受ssh密钥),但在部署脚本的上下文中却不能。
我对此很困惑,因为这两个命令都是从同一个目录运行的。你知道我该怎么做吗?
尝试使用sudo运行部署。的问候!
由于该文件位于/var/www
下,因此ssh-agent
无法访问密钥文件,因为它们存储在用户目录下。将整个项目移到用户目录中修复了这个问题。