Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用git(dokku)部署时出错-超时/管道断开_Git_Ssh_Dokku - Fatal编程技术网

使用git(dokku)部署时出错-超时/管道断开

使用git(dokku)部署时出错-超时/管道断开,git,ssh,dokku,Git,Ssh,Dokku,我使用dokku和数字海洋已经有一段时间了,没有任何问题 我现在在使用以下命令部署到dokku时遇到问题: git remote add dokku dokku@some-ip:myapp git push dokku develop:master 我有以下问题: Counting objects: 528, done. Delta compression using up to 4 threads. Compressing objects: 100% (509/509), done. pac

我使用dokku和数字海洋已经有一段时间了,没有任何问题

我现在在使用以下命令部署到dokku时遇到问题:

git remote add dokku dokku@some-ip:myapp
git push dokku develop:master
我有以下问题:

Counting objects: 528, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (509/509), done.
packet_write_wait: Connection to some-ip port 22: Broken pipe
fatal: The remote end hung up unexpectedly
error: failed to push some refs to 'dokku@some-ip:myapp'
我试着

  • 为ssh客户端设置
    ServerAliveInterval
  • git config http.postBuffer 209715200
    /
    git config ssh.postBuffer 209715200
但它不起作用。我想这是因为推送的内容有点大

谢谢你的帮助

更新

postBuffer
选项设置为
209715200
值后,我得到以下错误:

Counting objects: 528, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (353/353), done.
Timeout, server some-ip not responding.38.00 KiB/s   
fatal: The remote end hung up unexpectedly
error: failed to push some refs to 'dokku@some-ip:myapp'
在上传挂起之前,我得到的最后一个进度提示是:

Writing objects:  87% (466/531), 33.85 MiB | 120.00 KiB/s 
首先,这

    git config http.postBuffer 209715200 / git config ssh.postBuffer 209715200
只要您使用SSH(端口22),就不会有任何区别:

您的错误与配置无关,但您和目标点之间的internet连接不好/带宽低,这会导致tcp中的大数据包中断并丢失

人们对此进行了广泛的讨论。尝试:

1) 切换到http(这将增加brake的大小限制,因为头开销稍小)

2) 减少回购规模

,只有在您即将实现的情况下,这才有效。如果您的连接真的很糟糕,您无法物理传输大数据包(也因为包含多个标头),那么唯一的修复方法是:

增加带宽(切换到局域网、更换网络等)。
这可能是客户端和接收端的一项要求。

这通常发生在服务器内存不足时。您可以向服务器添加更多ram或设置交换空间。下面的脚本将创建2GB的交换空间

sudo install -o root -g root -m 0600 /dev/null /swapfile
dd if=/dev/zero of=/swapfile bs=1k count=2048k
mkswap /swapfile
swapon /swapfile
echo "/swapfile       swap    swap    auto      0       0" | sudo tee -a /etc/fstab
sudo sysctl -w vm.swappiness=10
echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf

还可以尝试一下。

是否在
某些ip上运行
sshd
?检查连接到
一些ip
一些ip:22
@phd非常感谢您的回答!是的,我可以用ssh连接到某个ip。在进行git推送时,我在开始时看到一些网络流量,但这会在一段时间后停止…时间是多少?秒、分钟还是小时?@Jakuje非常感谢您的回答!大约5/10分钟。仅供参考,我增加了postBuffer值,现在出现了一个超时错误…我想有一个配置条目需要更改,但我不知道是哪一个,它是ssh还是git/客户端或服务器。。。
sudo install -o root -g root -m 0600 /dev/null /swapfile
dd if=/dev/zero of=/swapfile bs=1k count=2048k
mkswap /swapfile
swapon /swapfile
echo "/swapfile       swap    swap    auto      0       0" | sudo tee -a /etc/fstab
sudo sysctl -w vm.swappiness=10
echo vm.swappiness = 10 | sudo tee -a /etc/sysctl.conf