Dockerfile.run 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. FROM sgerrand/glibc-builder as glibc
  2. RUN apt-get install -yq bison
  3. ENV PKGDIR /pkgdata
  4. RUN mkdir -p /usr/glibc-compat/etc && touch /usr/glibc-compat/etc/ld.so.conf
  5. RUN /builder 2.27 /usr/glibc-compat || true
  6. RUN mkdir -p $PKGDIR
  7. RUN tar -xf /glibc-bin-2.27.tar.gz -C $PKGDIR
  8. RUN rm "$PKGDIR"/usr/glibc-compat/etc/rpc && \
  9. rm -rf "$PKGDIR"/usr/glibc-compat/bin && \
  10. rm -rf "$PKGDIR"/usr/glibc-compat/sbin && \
  11. rm -rf "$PKGDIR"/usr/glibc-compat/lib/gconv && \
  12. rm -rf "$PKGDIR"/usr/glibc-compat/lib/getconf && \
  13. rm -rf "$PKGDIR"/usr/glibc-compat/lib/audit && \
  14. rm -rf "$PKGDIR"/usr/glibc-compat/share && \
  15. rm -rf "$PKGDIR"/usr/glibc-compat/var
  16. FROM alpine:3.6
  17. RUN apk update && apk add --no-cache openssl ca-certificates
  18. COPY --from=glibc /pkgdata/ /
  19. RUN mkdir -p /lib /lib64 /usr/glibc-compat/lib/locale /etc && \
  20. ln -s /lib/libz.so.1 /usr/glibc-compat/lib/ && \
  21. ln -s /lib/libc.musl-x86_64.so.1 /usr/glibc-compat/lib && \
  22. ln -s /usr/glibc-compat/lib/ld-linux-x86-64.so.2 /lib/ld-linux-x86-64.so.2 && \
  23. ln -s /usr/glibc-compat/lib/ld-linux-x86-64.so.2 /lib64/ld-linux-x86-64.so.2 && \
  24. ln -s /usr/glibc-compat/etc/ld.so.cache /etc/ld.so.cache
  25. RUN apk add --no-cache curl && \
  26. curl -fsSL -o dockerbins.tgz "https://download.docker.com/linux/static/stable/x86_64/docker-17.12.0-ce.tgz" && \
  27. SHA256=692e1c72937f6214b1038def84463018d8e320c8eaf8530546c84c2f8f9c767d; \
  28. echo "${SHA256} dockerbins.tgz" | sha256sum -c - && \
  29. tar xvf dockerbins.tgz docker/docker --strip-components 1 && \
  30. mv docker /usr/local/bin/docker && \
  31. chmod +x /usr/local/bin/docker && \
  32. rm dockerbins.tgz && \
  33. apk del curl
  34. COPY dist/docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
  35. ENTRYPOINT ["docker-compose"]