weaveworks / weave

Simple, resilient multi-host containers networking and more.
https://www.weave.works
Apache License 2.0
6.62k stars 671 forks source link

Transient Alpine Linux repository issues result in silently broken weaveexec image #663

Closed awh closed 9 years ago

awh commented 9 years ago

Resulting image is missing vital dependencies, but build succeeds:

sudo docker build -t weaveworks/weaveexec weaveexec
Sending build context to Docker daemon 10.92 MB
Sending build context to Docker daemon 
Step 0 : FROM gliderlabs/alpine
 ---> a8be93256def
Step 1 : MAINTAINER Weaveworks Inc <help@weave.works>
 ---> Using cache
 ---> 5891a0a9de2a
Step 2 : WORKDIR /home/weave
 ---> Using cache
 ---> 43ef3f11b126
Step 3 : RUN apk add --update ethtool conntrack-tools curl iptables iproute2 util-linux
 ---> Running in c5041fb5ceb6
fetch http://dl-4.alpinelinux.org/alpine/v3.1/main/x86_64/APKINDEX.tar.gz
(1/30) Installing ethtool (3.16-r0)
(2/30) Installing libmnl (1.0.3-r0)
(3/30) Installing libnfnetlink (1.0.1-r1)
ERROR: libnfnetlink-1.0.1-r1: Resource temporarily unavailable
(4/30) Installing libnetfilter_conntrack (1.0.4-r0)
(5/30) Installing libnetfilter_cthelper (1.0.0-r0)
(6/30) Installing libnetfilter_cttimeout (1.0.0-r0)
ERROR: libnetfilter_cttimeout-1.0.0-r0: Resource temporarily unavailable
(7/30) Installing libnetfilter_queue (1.0.2-r0)
(8/30) Installing libcom_err (1.42.12-r0)
ERROR: libcom_err-1.42.12-r0: Resource temporarily unavailable
(9/30) Installing krb5-conf (1.0-r0)
ERROR: krb5-conf-1.0-r0: Resource temporarily unavailable
(10/30) Installing keyutils-libs (1.5.9-r1)
(11/30) Installing libverto (0.2.5-r0)
(12/30) Installing krb5-libs (1.13-r1)
ERROR: krb5-libs-1.13-r1: Resource temporarily unavailable
(13/30) Installing libtirpc (0.2.5-r2)
(14/30) Installing conntrack-tools (1.4.2-r1)
ERROR: conntrack-tools-1.4.2-r1: Resource temporarily unavailable
(15/30) Installing run-parts (4.4-r0)
(16/30) Installing openssl (1.0.1m-r1)
(17/30) Installing lua5.2-libs (5.2.3-r0)
(18/30) Installing lua5.2 (5.2.3-r0)
(19/30) Installing lua5.2-posix (32-r1)
(20/30) Installing ca-certificates (20141019-r0)
ERROR: ca-certificates-20141019-r0: Resource temporarily unavailable
(21/30) Installing libssh2 (1.4.3-r0)
(22/30) Installing curl (7.39.0-r0)
(23/30) Installing iptables (1.4.21-r1)
ERROR: iptables-1.4.21-r1: Resource temporarily unavailable
(24/30) Installing iproute2 (3.15.0-r0)
ERROR: iproute2-3.15.0-r0: Resource temporarily unavailable
(25/30) Installing libuuid (2.25.2-r1)
ERROR: libuuid-2.25.2-r1: Resource temporarily unavailable
(26/30) Installing libblkid (2.25.2-r1)
ERROR: libblkid-2.25.2-r1: Resource temporarily unavailable
(27/30) Installing libmount (2.25.2-r1)
(28/30) Installing ncurses-terminfo-base (5.9-r3)
(29/30) Installing ncurses-widec-libs (5.9-r3)
(30/30) Installing util-linux (2.25.2-r1)
Executing busybox-1.22.1-r15.trigger
11 errors; 12 MiB in 34 packages
 ---> b00549c996c7
Removing intermediate container c5041fb5ceb6
Step 4 : RUN sh -c rm -rf /var/cache/apk/*
 ---> Running in ebf6938b9a53
 ---> c723e772a63d
Removing intermediate container ebf6938b9a53
Step 5 : ADD ./weave /home/weave/
 ---> 06c42953d909
Removing intermediate container 617aefd78b8f
Step 6 : ADD ./sigproxy /home/weave/
 ---> 84767cf9d6ef
Removing intermediate container da57264b644b
Step 7 : ADD ./docker.tgz /
 ---> cef1ef1bf5a5
Removing intermediate container c0cbf13c9540
Step 8 : ENTRYPOINT /home/weave/sigproxy /home/weave/weave
 ---> Running in bfdcd9d3e416
 ---> 7fcc9eb5af3d
Removing intermediate container bfdcd9d3e416
Successfully built 7fcc9eb5af3d
sudo docker save weaveworks/weaveexec:latest > weaveexec.tar
pradeepchhetri commented 9 years ago

By errors - "Resource temporary unavailable", it looks like it is the same issue https://github.com/gliderlabs/docker-alpine/issues/15 which says using "gliderlabs/alpine:edge" as the base image should fix it.

rade commented 9 years ago

The fix for this is supposed to be in alpine 3.2, which has been released recently. There's an image with a 3.2 tag on dockerhub.

Is there any way we can test the fix?

awh commented 9 years ago

Yes - I can get it to fail reliably by dint of #730.

awh commented 9 years ago

Assigning to me, since I can test it easily...

awh commented 9 years ago

I can confirm this is fixed with Alpine 3.2 (note that it fails at the end, not as soon as it encounters a DNS error):

sudo docker build -t weaveworks/weaveexec weaveexec
Sending build context to Docker daemon 21.65 MB
Sending build context to Docker daemon 
Step 0 : FROM gliderlabs/alpine
 ---> 3adc3de69ee5
Step 1 : MAINTAINER Weaveworks Inc <help@weave.works>
 ---> Using cache
 ---> 85869f2166f1
Step 2 : RUN apk add --update     curl     ethtool     iptables     iproute2     util-linux     conntrack-tools   && rm -rf /var/cache/apk/*
 ---> Running in 5f5e9809b74a
fetch http://dl-4.alpinelinux.org/alpine/v3.2/main/x86_64/APKINDEX.tar.gz
(1/30) Installing libmnl (1.0.3-r0)
(2/30) Installing libnfnetlink (1.0.1-r1)
ERROR: libnfnetlink-1.0.1-r1: DNS lookup error
(3/30) Installing libnetfilter_conntrack (1.0.4-r0)
(4/30) Installing libnetfilter_cthelper (1.0.0-r0)
ERROR: libnetfilter_cthelper-1.0.0-r0: DNS lookup error
(5/30) Installing libnetfilter_cttimeout (1.0.0-r0)
(6/30) Installing libnetfilter_queue (1.0.2-r0)
ERROR: libnetfilter_queue-1.0.2-r0: DNS lookup error
(7/30) Installing libcom_err (1.42.13-r0)
ERROR: libcom_err-1.42.13-r0: DNS lookup error
(8/30) Installing krb5-conf (1.0-r0)
(9/30) Installing keyutils-libs (1.5.9-r1)
(10/30) Installing libverto (0.2.5-r0)
ERROR: libverto-0.2.5-r0: DNS lookup error
(11/30) Installing krb5-libs (1.13.1-r1)
ERROR: krb5-libs-1.13.1-r1: DNS lookup error
(12/30) Installing libtirpc (0.3.0-r1)
(13/30) Installing conntrack-tools (1.4.2-r2)
ERROR: conntrack-tools-1.4.2-r2: DNS lookup error
(14/30) Installing run-parts (4.4-r0)
(15/30) Installing openssl (1.0.2a-r1)
ERROR: openssl-1.0.2a-r1: DNS lookup error
(16/30) Installing lua5.2-libs (5.2.4-r0)
(17/30) Installing lua5.2 (5.2.4-r0)
(18/30) Installing ncurses-terminfo-base (5.9-r3)
ERROR: ncurses-terminfo-base-5.9-r3: DNS lookup error
(19/30) Installing ncurses-widec-libs (5.9-r3)
ERROR: ncurses-widec-libs-5.9-r3: DNS lookup error
(20/30) Installing lua5.2-posix (33.3.1-r2)
(21/30) Installing ca-certificates (20141019-r2)
(22/30) Installing libssh2 (1.5.0-r0)
ERROR: libssh2-1.5.0-r0: DNS lookup error
(23/30) Installing curl (7.42.1-r0)
ERROR: curl-7.42.1-r0: DNS lookup error
(24/30) Installing ethtool (3.18-r0)
ERROR: ethtool-3.18-r0: DNS lookup error
(25/30) Installing iptables (1.4.21-r3)
(26/30) Installing iproute2 (3.18.0-r0)
Executing iproute2-3.18.0-r0.post-install
(27/30) Installing libuuid (2.26.2-r0)
(28/30) Installing libblkid (2.26.2-r0)
ERROR: libblkid-2.26.2-r0: DNS lookup error
(29/30) Installing libmount (2.26.2-r0)
(30/30) Installing util-linux (2.26.2-r0)
Executing busybox-1.23.2-r0.trigger
Executing ca-certificates-20141019-r2.trigger
14 errors; 13 MiB in 31 packages
INFO[0117] The command [/bin/sh -c apk add --update     curl     ethtool     iptables     iproute2     util-linux     conntrack-tools   && rm -rf /var/cache/apk/*] returned a non-zero code: 14 
Makefile:74: recipe for target 'weaveexec.tar' failed
make: *** [weaveexec.tar] Error 1

gliderlabs/alpine:latest now points to 3.2 so any new builds will exhibit the desired behaviour.