Connection timeout error while updating composer on Digital Ocean

10,129

Solution 1

https://getcomposer.org/doc/articles/troubleshooting.md#operation-timed-out-ipv6-issues- could solve your problem. And if composer update is slow afterwards, try running it with a more recent PHP version. Running it with PHP 7 instead of PHP 5 will cause a big speedup

Solution 2

You can run this command as root to make IPV4 more prior than IPV6:

sudo sh -c "echo 'precedence ::ffff:0:0/96 100' >> /etc/gai.conf"
Share:
10,129
Donkarnash
Author by

Donkarnash

Web Developer comfortable with Laravel, Vuejs, Laravel Livewire and Tailwindcss.

Updated on June 27, 2022

Comments

  • Donkarnash
    Donkarnash almost 2 years

    I am able to ssh into my droplet. Am also able to apt update and apt upgrade.

    When I try to run sudo composer self-update or composer update, I am getting connection timeout error.

    The "https://getcomposer.org/versions" file could not be downloaded: failed to open stream: Connection timed out  
    

    output of ufw status

    To      Action    From
    22      ALLOW     Anywhere
    80      ALLOW     Anywhere
    443     ALLOW     Anywhere
    25      ALLOW     Anywhere
    10000   ALLOW     Anywhere     
    

    output of composer diagnose

    Checking platform settings: OK
    Checking git settings: OK
    Checking http connectivity to packagist: FAIL
    [Composer\Downloader\TransportException] The "http://packagist.org/packages.json" file    could not be downloaded: failed to open stream: Connection timed out
    Checking https connectivity to packagist: FAIL
    [Composer\Downloader\TransportException] The "https://packagist.org/packages.json" file    could not be downloaded: failed to open stream: Connection timed out
    Checking github.com rate limit: OK
    Checking disk free space: OK
    Checking composer version: 
    
    [Composer\Downloader\TransportException]                                     
    The "https://getcomposer.org/version" file could not be downloaded: failed   
    to open stream: Connection timed out
    

    output of composer --version

    Composer version 1.0-dev (9e9c1917e1ed9f3f78b195a785aee3c6dc3cb883) 2015-11-23 10:31:23  
    

    output of curl IL http://packagist.org/packages.json

    HTTP/1.1 200 OK
    Server: nginx
    Date: Sun, 10 Dec 2017 08:40:20 GMT
    Content-Type: application/json
    Content-Length: 1302
    Last-Modified: Sun, 10 Dec 2017 08:38:28 GMT
    Connection: keep-alive
    ETag: "5a2cf284-516"
    Cache-Control: private, max-age=0, no-cache
    Accept-Ranges: bytes  
    

    I tried to manually get a copy of latest composer but it also doesn't work

    output of php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

    PHP Warning:  copy(https://getcomposer.org/installer): failed to open stream: Connection timed out in Command line code on line 1  
    

    What could be the reason? I was all working till about a week ago. I am able to visit (browse) the webpages hosted on my droplett. Am also able to apt update and apt upgrade.

    • Nico Haase
      Nico Haase over 6 years
      Have a look at getcomposer.org/doc/articles/… - this looks like your problem
    • Donkarnash
      Donkarnash over 6 years
      @NicoHaase This seems to work - atleast get the sudo composer self-update worked. However the composer update within a project directory is pretty slow - seems to take ages to update the dependencies. I think I will have to google further to understand why the composer update is so slow. Thanks again the issue does seem to be about improper ipv6 config on droplet. If you post it as an answer, I'll be glad to mark it as correct answer.
  • Pablo Palacios
    Pablo Palacios over 5 years
    Thanks, all morning searching for this. It's some sort of problem with my network «I guess» so I don't have access throw ipv6 but it works on ipv4. Thanks Bro.
  • Nico Haase
    Nico Haase over 4 years
    Can you explain that further? How does composer diag solve any problem?
  • JessGabriel
    JessGabriel over 4 years
    I don't know what really happen but sometimes it resolves the problem. Looks like composer diag don't diagnose only but trying to solve something or change something too