我已经通过ssh登录到一个新的EC2实例,这是为我们的生产环境进行设置的。我尝试从另一个EC2实例(作为我们的开发机器)上克隆一个项目,但我收到了以下错误消息:
git clone
$ git clone ubuntu@?.??.??.??6:/var/git/our-project.git our-project
Cloning into 'our-project'...
ssh: connect to host ?.??.??.??6 port 22: Connection timed out
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
我已经在生产环境中创建了公钥/私钥对,以连接到开发环境中,并将公钥添加到dev box的authorized_keys
。这与我在本地机器上使用的设置相同,可以正常工作。
我还为dev box配置了AWS安全组,其中将生产ec2的公共IP添加到其中,以允许端口22上的ssh入站连接。
问题可能是,我无法从一个机器中进行其他ssh
,而这实际上是git clone
命令所做的。我还尝试了此答案建议的方法从本地机器运行git clone命令,但是,如您所见,这给我带来了相同的错误消息。
ssh ubuntu@5?.??.??.??8 'git clone ubuntu@?.??.??.??6:/var/git/our-project.git /var/www/our-project'
Cloning into '/var/www/houseofireland'...
ssh: connect to host ?.??.??.??6 port 22: Connection timed out
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
非常感谢您对此问题的任何可能原因或解决方案。
ssh
到第二个实例吗? - Robssh
应用程序仍在远程计算机上运行,因此如果需要,您可以基本上拥有无限数量的ssh
链。至于实际问题,我不确定我能否再提供帮助 - 我对EC2实例不太熟悉,而且问题可能有很多原因。但是,您可以确定它与git本身无关 - 开发机器只是从生产环境中无法访问(也许是正确的?) - Rob