Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dl-cdn.alpinelinux.org errors #386

Open
accursoft opened this issue Mar 4, 2018 · 31 comments
Open

dl-cdn.alpinelinux.org errors #386

accursoft opened this issue Mar 4, 2018 · 31 comments

Comments

@accursoft
Copy link

@accursoft accursoft commented Mar 4, 2018

$ apk add --no-cache bash
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/community/x86_64/APKINDEX.tar.gz
(1/6) Installing pkgconf (1.3.10-r0)
(2/6) Installing ncurses-terminfo-base (6.0_p20171125-r0)
(3/6) Installing ncurses-terminfo (6.0_p20171125-r0)
ERROR: ncurses-terminfo-6.0_p20171125-r0: Protocol error
(4/6) Installing ncurses-libs (6.0_p20171125-r0)
(5/6) Installing readline (7.0.003-r0)
(6/6) Installing bash (4.4.19-r1)
ERROR: bash-4.4.19-r1: Protocol error
Executing busybox-1.27.2-r7.trigger
2 errors; 5 MiB in 15 packages

Been getting this for a few days now.

@GaudamThiyagarajan

This comment has been minimized.

Copy link

@GaudamThiyagarajan GaudamThiyagarajan commented Mar 12, 2018

is there any update on this? Im too getting this error

@rouing

This comment has been minimized.

Copy link

@rouing rouing commented Mar 13, 2018

fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.4/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.167438ca.tar.gz: No such file or directory
fetch http://dl-cdn.alpinelinux.org/alpine/v3.4/community/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.4/community: temporary error (try again later)
WARNING: Ignoring APKINDEX.a2e6dac0.tar.gz: No such file or directory
2 errors; 11 distinct packages available
WARNING: Ignoring APKINDEX.167438ca.tar.gz: No such file or directory
WARNING: Ignoring APKINDEX.a2e6dac0.tar.gz: No such file or directory
ERROR: unsatisfiable constraints:
  curl (missing):
    required by: world[curl]
WARNING: Ignoring APKINDEX.167438ca.tar.gz: No such file or directory
WARNING: Ignoring APKINDEX.a2e6dac0.tar.gz: No such file or directory
ERROR: unsatisfiable constraints:
  pcre (missing):
    required by: world[pcre]
./mnt/install/install.sh: line 15: curl: not found
grep: unrecognized option: P
@jakubszlendak

This comment has been minimized.

Copy link

@jakubszlendak jakubszlendak commented Mar 17, 2018

Also getting these errors.

@alexandermuehle

This comment has been minimized.

Copy link

@alexandermuehle alexandermuehle commented Mar 19, 2018

fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.7/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.70c88391.tar.gz: No such file or directory

CDN seems to be down again

@kbaegis

This comment has been minimized.

Copy link

@kbaegis kbaegis commented Mar 27, 2018

+1

Had this issue, but realized that it was a defective docker bridge or something. Restarting the daemon fixed it for me and the troubleshooting process was working back from DNS resolution, routing, etc from the pertinent host.

@GaudamThiyagarajan

This comment has been minimized.

Copy link

@GaudamThiyagarajan GaudamThiyagarajan commented Mar 28, 2018

adding RUN echo -e "http://nl.alpinelinux.org/alpine/v3.5/main\nhttp://nl.alpinelinux.org/alpine/v3.5/community" > /etc/apk/repositories fixed my issue

@JPWKU

This comment has been minimized.

Copy link

@JPWKU JPWKU commented Mar 29, 2018

#279 is a similar issue from the past.
I would like to report that we are also seeing timeouts updating against dl-cdn.alpinelinux.org.
I have sidestepped the issue by adding references to one of the mirrors in our Dockerfile.

@prawen

This comment has been minimized.

Copy link

@prawen prawen commented Apr 10, 2018

Hello,

Is there any fix available for this? I'm getting same error especially in APAC region.

Step 1/14 : FROM openjdk:8u151-jdk-alpine3.7
---> 224765a6bdbe
Step 2/14 : RUN apk add --no-cache bash
---> Running in 9f36177aa798
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.7/community/x86_64/APKINDEX.tar.gz
(1/6) Installing pkgconf (1.3.10-r0)
(2/6) Installing ncurses-terminfo-base (6.0_p20171125-r0)
ERROR: ncurses-terminfo-base-6.0_p20171125-r0: Protocol error
(3/6) Installing ncurses-terminfo (6.0_p20171125-r0)
(4/6) Installing ncurses-libs (6.0_p20171125-r0)
(5/6) Installing readline (7.0.003-r0)
(6/6) Installing bash (4.4.19-r1)
ERROR: bash-4.4.19-r1: Protocol error
Executing busybox-1.27.2-r7.trigger
2 errors; 107 MiB in 55 packages
The command '/bin/sh -c apk add --no-cache bash' returned a non-zero code: 2

@GaudamThiyagarajan

This comment has been minimized.

Copy link

@GaudamThiyagarajan GaudamThiyagarajan commented Apr 10, 2018

@prawen
RUN echo -e "http://nl.alpinelinux.org/alpine/v3.5/main\nhttp://nl.alpinelinux.org/alpine/v3.5/community" > /etc/apk/repositories

fixed my issue before your $ apk add --no-cache bash

@JoFAM

This comment has been minimized.

Copy link

@JoFAM JoFAM commented Apr 11, 2018

Had the same error trying to build an alpine-sdk docker using Docker Windows 10. Checked the status of the server, and the server was fine and reachable outside docker.

Restarting docker did the trick for me. Looking in the Docker log file it's clear that the DNS configuration was set incorrectly. So when seeing this error in a docker context, try to restart docker first.

@prawen

This comment has been minimized.

Copy link

@prawen prawen commented Apr 12, 2018

After trying both the workarounds I'm still getting below error.

Step 1/15 : FROM openjdk:8u151-jdk-alpine3.7
---> 224765a6bdbe
Step 2/15 : RUN echo -e "http://nl.alpinelinux.org/alpine/v3.5/main\nhttp://nl.alpinelinux.org/alpine/v3.5/community" > /etc/apk/repositories
---> Using cache
---> 62d6f04e3f75
Step 3/15 : RUN apk add --no-cache bash
---> Running in 316074569bd7
fetch http://nl.alpinelinux.org/alpine/v3.5/main/x86_64/APKINDEX.tar.gz
fetch http://nl.alpinelinux.org/alpine/v3.5/community/x86_64/APKINDEX.tar.gz
(1/5) Installing ncurses-terminfo-base (6.0_p20171125-r0)
(2/5) Installing ncurses-terminfo (6.0_p20171125-r0)
(3/5) Installing ncurses-libs (6.0_p20171125-r0)
ERROR: ncurses-terminfo-6.0_p20171125-r0: BAD signature
(4/5) Installing readline (6.3.008-r4)
(5/5) Installing bash (4.3.46-r5)

@azyata

This comment has been minimized.

Copy link

@azyata azyata commented Apr 26, 2018

If you do not know what the reason is, then it is probably DNS

  • 8.8.8.8 cannot resolve dl-cdn.alpinelinux.org
  • ns1.alpinelinux.org can resolve dl-cdn.alpinelinux.org
  • dl-cdn.alpinelinux.org is CNAME for global.prod.fastly.net
  • ns1.alpinelinux.org cannot resolve global.prod.fastly.net
  • 8.8.8.8 can resolve global.prod.fastly.net
dig http://dl-cdn.alpinelinux.org

; <<>> DiG 9.10.3-P4-Ubuntu <<>> http://dl-cdn.alpinelinux.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 11102
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4000
;; QUESTION SECTION:
;http://dl-cdn.alpinelinux.org.	IN	A

;; AUTHORITY SECTION:
alpinelinux.org.	899	IN	SOA	ns1.alpinelinux.org. webmaster.alpinelinux.org. 20180406 1800 1800 3600 3600

;; Query time: 95 msec
;; SERVER: 127.0.1.1#53(127.0.1.1)
;; WHEN: Thu Apr 26 11:28:52 CEST 2018
;; MSG SIZE  rcvd: 108
dig @ns1.alpinelinux.org dl-cdn.alpinelinux.org

; <<>> DiG 9.10.3-P4-Ubuntu <<>> @ns1.alpinelinux.org dl-cdn.alpinelinux.org
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 29219
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;dl-cdn.alpinelinux.org.		IN	A

;; ANSWER SECTION:
dl-cdn.alpinelinux.org.	3600	IN	CNAME	global.prod.fastly.net.

;; Query time: 150 msec
;; SERVER: 74.117.189.114#53(74.117.189.114)
;; WHEN: Thu Apr 26 11:29:27 CEST 2018
;; MSG SIZE  rcvd: 87

dig @ns1.alpinelinux.org global.prod.fastly.net

; <<>> DiG 9.10.3-P4-Ubuntu <<>> @ns1.alpinelinux.org global.prod.fastly.net
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 45878
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;global.prod.fastly.net.		IN	A

;; Query time: 151 msec
;; SERVER: 74.117.189.114#53(74.117.189.114)
;; WHEN: Thu Apr 26 11:29:40 CEST 2018
;; MSG SIZE  rcvd: 51
dig @8.8.8.8 global.prod.fastly.net

; <<>> DiG 9.10.3-P4-Ubuntu <<>> @8.8.8.8 global.prod.fastly.net
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24521
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;global.prod.fastly.net.		IN	A

;; ANSWER SECTION:
global.prod.fastly.net.	29	IN	A	151.101.0.249
global.prod.fastly.net.	29	IN	A	151.101.64.249
global.prod.fastly.net.	29	IN	A	151.101.128.249
global.prod.fastly.net.	29	IN	A	151.101.192.249

;; Query time: 41 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Thu Apr 26 11:29:52 CEST 2018
;; MSG SIZE  rcvd: 115
@helgeolav

This comment has been minimized.

Copy link

@helgeolav helgeolav commented May 10, 2018

It seems to be an issue with wget (or any other tool fetching data) not sending host header when requesting resources.

@neclimdul

This comment has been minimized.

Copy link

@neclimdul neclimdul commented May 10, 2018

not sure what you mean. Here's the wireshark of apk requesting the APKINDEX.tar.gz
selection_128

@jingax10

This comment has been minimized.

Copy link

@jingax10 jingax10 commented Jun 27, 2018

I hit the same error. Any more update?

RUN echo -e "http://nl.alpinelinux.org/alpine/v3.5/main\nhttp://nl.alpinelinux.org/alpine/v3.5/community" > /etc/apk/repositoriesdoes not work for me :-(

@neuralsandwich

This comment has been minimized.

Copy link

@neuralsandwich neuralsandwich commented Jul 30, 2018

Running the echo command and it didn't seem to help. I ended up just restarting my laptop and that seemed to work.

@amarjeet27

This comment has been minimized.

Copy link

@amarjeet27 amarjeet27 commented Aug 7, 2018

Any others suggestions on working around this issue?

@us108y

This comment has been minimized.

Copy link

@us108y us108y commented Aug 9, 2018

Not working for me any updates on this ,,

This is annoying

@azalio

This comment has been minimized.

Copy link

@azalio azalio commented Oct 20, 2018

In my situation was wrong /etc/resolv.conf file.
Just check in a container
ping dl-cdn.alpinelinux.org

@Syed-Saad-Qamar

This comment has been minimized.

Copy link

@Syed-Saad-Qamar Syed-Saad-Qamar commented Nov 11, 2018

It's DNS issue you can solve it by using the following steps:

  1. Find your DNS ip using below command
    nmcli dev show | grep 'IP4.DNS'

IP4.DNS[1]: 192.168.0.1

  1. Create a file in the desktop which name is deamon.json and file has below data:
    {
    "dns": ["192.168.0.1", "8.8.8.8"]
    }

note: replace that ip "192.168.0.1" to your dns ip

  1. Go that directory /etc/docker/ in your system and paste file deamon.json that you just created

  2. Then restart your docker/your system, it will solve your issue.

@drpreag

This comment has been minimized.

Copy link

@drpreag drpreag commented Jan 22, 2019

Seems your docker can not go out of host machine. Maybe this can help:

iptables -t nat -A POSTROUTING ! -o docker0 -s 172.17.0.0/16 -j MASQUERADE

@deepsnitk

This comment has been minimized.

Copy link

@deepsnitk deepsnitk commented Apr 9, 2019

Please use docker run -e OR docker build --build-arg to pass http_proxy env variable required for apk package manager

@adigunhammedolalekan

This comment has been minimized.

Copy link

@adigunhammedolalekan adigunhammedolalekan commented Apr 14, 2019

@GaudamThiyagarajan solution worked for me

@s8sg

This comment has been minimized.

Copy link

@s8sg s8sg commented May 8, 2019

as pointed out by @azyata its can be a problem with the DNS settings

If you are performing apk add inside the container, below might be helpful

From docs.docker.com:

By default, a container inherits the DNS settings of the Docker daemon
including the /etc/hosts and /etc/resolv.conf

  1. Try to ping
ping dl-cdn.alpinelinux.org

if it doesn't work

  1. Check DNS configuration in /etc/resolve.conf in host machine, try adding
nameserver 8.8.8.8

then perform ping

ping dl-cdn.alpinelinux.org

if it works for you, then

  1. Restart the docker daemon
sudo systemctl restart docker

^ This solved the problem for me.

@HSpens

This comment has been minimized.

Copy link

@HSpens HSpens commented Sep 27, 2019

I'm behind a proxy and I experienced a similar error:

fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/main/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.10/main: temporary error (try again later)
WARNING: Ignoring APKINDEX.00740ba1.tar.gz: No such file or directory
fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/community/x86_64/APKINDEX.tar.gz
ERROR: http://dl-cdn.alpinelinux.org/alpine/v3.10/community: temporary error (try again later)
WARNING: Ignoring APKINDEX.d8b2a6f4.tar.gz: No such file or directory
2 errors; 15 distinct packages available

I solved it by creating a daemon.json file in /etc/docker/

sudo nano /etc/docker/daemon.json

and inserting:

{
  "bip": "192.168.1.5/24"
}

Restart docker and try again:

sudo systemctl daemon-reload
sudo systemctl restart docker

If I were to guess I'd say that docker bridge0 clash with the proxy in some way?

@lucidyan

This comment has been minimized.

Copy link

@lucidyan lucidyan commented Oct 6, 2019

Dirty hack for resolving this without changing daemon settings:

RUN \
    # DNS problem workaround
    # https://github.com/gliderlabs/docker-alpine/issues/386
    printf "nameserver 8.8.8.8\nnameserver 9.9.9.9\nnameserver 1.1.1.1" > /etc/resolv.conf \
    \
    && apk add --no-cache bash

Notice that it only affect current layer, in other layers you should add this patch too if needed.

Also you can pass custom DNS server from the ARGs.

@KEINOS

This comment has been minimized.

Copy link

@KEINOS KEINOS commented Dec 19, 2019

While building, using --network=host option solved fetching from CDN for me.

docker build -t sample --network=host .
$ # Results without --network option
$ docker build -t sample  .
...
Step 4/18 : RUN apk add --no-cache --update   ca-certificates   curl   ffmpeg   git   make   rtmpdump   tzdata
 ---> Running in 97d093634b58
fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/main/armhf/APKINDEX.tar.gz
WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.10/main/armhf/APKINDEX.tar.gz: IO ERROR
fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/community/armhf/APKINDEX.tar.gz
WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.10/community/armhf/APKINDEX.tar.gz: IO ERROR
ERROR: unsatisfiable constraints:
  curl (missing):
    required by: world[curl]
  ffmpeg (missing):
    required by: world[ffmpeg]
  git (missing):
    required by: world[git]
  make (missing):
    required by: world[make]
  rtmpdump (missing):
    required by: world[rtmpdump]
  tzdata (missing):
    required by: world[tzdata]
The command '/bin/sh -c apk add --no-cache --update   ca-certificates   curl   ffmpeg   git   make   rtmpdump   tzdata' returned a non-zero code: 6

I got the above "IO ERROR WARNING" but I was able to curl(download) them from the host.
So I assumed that CDN wasn't down but something wrong about docker's network.

I set the networking mode as host for the RUN instructions during build by adding --network=host option and started to download. Hope this helps.

  • Docker: 18.06.3-ce
  • Base Image: Alpine Linux v3.10.3
@ncopa

This comment has been minimized.

Copy link
Collaborator

@ncopa ncopa commented Dec 19, 2019

While building, using --network=host option solved fetching from CDN for me.

docker build -t sample --network=host .
$ # Results without --network option
$ docker build -t sample  .
...
Step 4/18 : RUN apk add --no-cache --update   ca-certificates   curl   ffmpeg   git   make   rtmpdump   tzdata
 ---> Running in 97d093634b58
fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/main/armhf/APKINDEX.tar.gz
WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.10/main/armhf/APKINDEX.tar.gz: IO ERROR
...

I got the above "IO ERROR WARNING" but I was able to curl(download) them from the host.
So I assumed that CDN wasn't down but something wrong about docker's network.

I believe this happens when MTU in the container differs from the MTU on the host. What happens is that Fastly filters out need-to-frag ICMP packets so Path MTU is broken on fastly (and dl-cdn.alpinelinux.org).

@fede-r1c0

This comment has been minimized.

Copy link

@fede-r1c0 fede-r1c0 commented Feb 2, 2020

While building, using **--network=host** option solved fetching from CDN for me.

docker build -t sample --network=host .
$ # Results without --network option
$ docker build -t sample  .
...
Step 4/18 : RUN apk add --no-cache --update   ca-certificates   curl   ffmpeg   git   make   rtmpdump   tzdata
 ---> Running in 97d093634b58
fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/main/armhf/APKINDEX.tar.gz
WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.10/main/armhf/APKINDEX.tar.gz: IO ERROR
fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/community/armhf/APKINDEX.tar.gz
WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.10/community/armhf/APKINDEX.tar.gz: IO ERROR
ERROR: unsatisfiable constraints:
  curl (missing):
    required by: world[curl]
  ffmpeg (missing):
    required by: world[ffmpeg]
  git (missing):
    required by: world[git]
  make (missing):
    required by: world[make]
  rtmpdump (missing):
    required by: world[rtmpdump]
  tzdata (missing):
    required by: world[tzdata]
The command '/bin/sh -c apk add --no-cache --update   ca-certificates   curl   ffmpeg   git   make   rtmpdump   tzdata' returned a non-zero code: 6

I got the above "IO ERROR WARNING" but I was able to curl(download) them from the host.
So I assumed that CDN wasn't down but something wrong about docker's network.

I set the networking mode as host for the RUN instructions during build by adding --network=host option and started to download. Hope this helps.

* Docker: 18.06.3-ce

* Base Image: Alpine Linux v3.10.3

This solved my problem to build my docker image. Thank you

@Nkumar88

This comment has been minimized.

Copy link

@Nkumar88 Nkumar88 commented Feb 16, 2020

Adding --network=host in the build command fixed my issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
You can’t perform that action at this time.