我正试图通过BitBucket管道和轻松-corp/简易部署包将我的Symfony 5应用程序部署到我的服务器上。我按照https://support.atlassian.com/bitbucket-cloud/docs/use-ssh-keys-in-bitbucket-pipelines/上的说明创建了ssh键,并将我的服务器添加为BitBucket中已知的主机。我还遵循了https://github.com/EasyCorp/easy-deploy-bundle/的指示。
在运行php bin/console deploy -v时,在管道中遇到的错误是:
[...] Executing command: echo 1234353400
| err :: Host key verification failed.
In Process.php line 252:
[Symfony\Component\Process\Exception\ProcessFailedException]
The command "ssh ... -p ... 'echo 1234353400'" failed.
Exit Code: 255(Unknown error)
Working directory: /opt/atlassian/pipelines/agent/build
Output:
================
Error Output:
================
Host key verification failed. 我已经将Symfony中的公钥添加到服务器上的文件~/.ssh/authorized_keys中。
我的部署配置文件(deploy.php)如下所示:
<?php
use EasyCorp\Bundle\EasyDeployBundle\Deployer\DefaultDeployer;
return new class extends DefaultDeployer
{
public function configure()
{
return $this->getConfigBuilder()
->server('user@host:port')
->deployDir('dir')
->repositoryUrl('ssh-url')
->repositoryBranch('develop')
;
}
};其中,用户、主机、端口、dir和ssh-url被我的凭据所取代,当通过终端中的ssh访问服务器时,凭据很好地工作。
那我做错什么了?轻松部署包是否访问有效的.ssh目录( BitBucket存储我的密钥和已知主机)?
我发现StrictHostKeyChecking=no可能是一个可能的解决方案,但我没有找到如何在轻松部署包中禁用它。
谢谢你的帮助。
发布于 2020-08-20 04:32:40
我发现
StrictHostKeyChecking=no可能是一个可能的解决方案,但我没有找到如何在轻松部署包中禁用它。
这意味着你实际上没有added the remote server fingerprint to the known_hosts。
known_hosts
~/.ssh/known_hosts)添加它,但是插件由另一个帐户(或root)执行,并且不读取正确的
https://stackoverflow.com/questions/63486882
复制相似问题