Include virtual packages in alpine mirror

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
This commit is contained in:
Justin Cormack 2017-05-08 11:28:34 +01:00
parent 85093a5f42
commit 8914ccc6da
2 changed files with 12 additions and 17 deletions

View File

@ -5,22 +5,18 @@ RUN apk update && apk upgrade -a
COPY packages /tmp/
# get full set of dependent packages by installing
RUN cat /tmp/packages | xargs apk add --no-cache
RUN apk info -v | sed 's/$/.apk/g' > /tmp/exact-packages
# install rsync, abuild for mirroring, gcc dep for abuild-keygen
RUN apk add --no-cache rsync abuild gcc
# mirror packages
RUN mkdir -p /mirror/$(uname -m) && \
rsync --files-from=/tmp/exact-packages rsync://rsync.alpinelinux.org/alpine/edge/main/$(uname -m)/ /mirror/$(uname -m)/
apk fetch --recursive -o /mirror/$(uname -m) $(apk info; cat /tmp/packages)
# install abuild for signing
RUN apk add --no-cache abuild
# install a new key into /etc/apk/keys
RUN abuild-keygen -a -i -n
# index the new repo
RUN apk index -o /mirror/$(uname -m)/APKINDEX.unsigned.tar.gz /mirror/$(uname -m)/*.apk
RUN apk index --rewrite-arch $(uname -m) -o /mirror/$(uname -m)/APKINDEX.unsigned.tar.gz /mirror/$(uname -m)/*.apk
# sign the index
RUN cp /mirror/$(uname -m)/APKINDEX.unsigned.tar.gz /mirror/$(uname -m)/APKINDEX.tar.gz
@ -31,9 +27,8 @@ RUN echo "/mirror" > /etc/apk/repositories && apk update
FROM alpine:edge
# update base image
RUN apk update && apk upgrade -a
COPY --from=mirror /etc/apk/repositories /etc/apk/repositories
COPY --from=mirror /etc/apk/keys /etc/apk/keys/
COPY --from=mirror /mirror /mirror/
RUN apk update && apk upgrade -a

View File

@ -68,7 +68,7 @@ libcap-ng-0.7.8-r0
libcom_err-1.43.4-r0
libcurl-7.54.0-r0
libdrm-2.4.80-r0
libedit-20170329.3.1-r1
libedit-20170329.3.1-r2
libelf-0.8.13-r2
libelf-dev-0.8.13-r2
libepoxy-1.4.1-r0
@ -89,10 +89,10 @@ libnftnl-libs-1.0.7-r0
libogg-1.3.2-r1
libpciaccess-0.13.4-r1
libpng-1.6.29-r1
libressl-2.5.3-r1
libressl2.5-libcrypto-2.5.3-r1
libressl2.5-libssl-2.5.3-r1
libressl2.5-libtls-2.5.3-r1
libressl-2.5.4-r0
libressl2.5-libcrypto-2.5.4-r0
libressl2.5-libssl-2.5.4-r0
libressl2.5-libtls-2.5.4-r0
libsasl-2.1.26-r10
libseccomp-2.3.2-r0
libseccomp-dev-2.3.2-r0