Skip to content

Commit

Permalink
Merge pull request #230 from J0WI/fix-glibc-dep
Browse files Browse the repository at this point in the history
Avoid glibc dependency
  • Loading branch information
tianon committed Mar 24, 2021
2 parents ae11c0c + d93440f commit 3fdebe9
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 24 deletions.
14 changes: 6 additions & 8 deletions 4.0/alpine/Dockerfile
Expand Up @@ -53,6 +53,8 @@ RUN set -eux; \
chmod -R ugo=rwX config db sqlite; \
find log tmp -type d -exec chmod 1777 '{}' +

# build for musl-libc, not glibc (see https://github.com/sparklemotion/nokogiri/issues/2075, https://github.com/rubygems/rubygems/issues/3174)
ENV BUNDLE_FORCE_RUBY_PLATFORM 1
RUN set -eux; \
\
apk add --no-cache --virtual .build-deps \
Expand Down Expand Up @@ -88,14 +90,10 @@ RUN set -eux; \
rm /usr/local/bundle/gems/rbpdf-font-1.19.*/lib/fonts/ttf2ufm/ttf2ufm; \
\
runDeps="$( \
find /usr/local -type f -executable -exec ldd '{}' ';' \
| awk '/=>/ { print $(NF-1) }' \
| sort -u \
| grep -v '^/usr/local/' \
| xargs -rn1 basename \
| grep -v 'ld-musl-' \
| sed -e 's/^/so:/' \
| sort -u \
scanelf --needed --nobanner --format '%n#p' --recursive /usr/local/bundle/gems \
| tr ',' '\n' \
| sort -u \
| awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \
)"; \
apk add --no-network --virtual .redmine-rundeps $runDeps; \
apk del --no-network .build-deps
Expand Down
14 changes: 6 additions & 8 deletions 4.1/alpine/Dockerfile
Expand Up @@ -54,6 +54,8 @@ RUN set -eux; \
chmod -R ugo=rwX config db sqlite; \
find log tmp -type d -exec chmod 1777 '{}' +

# build for musl-libc, not glibc (see https://github.com/sparklemotion/nokogiri/issues/2075, https://github.com/rubygems/rubygems/issues/3174)
ENV BUNDLE_FORCE_RUBY_PLATFORM 1
RUN set -eux; \
\
apk add --no-cache --virtual .build-deps \
Expand Down Expand Up @@ -87,14 +89,10 @@ RUN set -eux; \
rm /usr/local/bundle/gems/rbpdf-font-1.19.*/lib/fonts/ttf2ufm/ttf2ufm; \
\
runDeps="$( \
find /usr/local -type f -executable -exec ldd '{}' ';' \
| awk '/=>/ { print $(NF-1) }' \
| sort -u \
| grep -v '^/usr/local/' \
| xargs -rn1 basename \
| grep -v 'ld-musl-' \
| sed -e 's/^/so:/' \
| sort -u \
scanelf --needed --nobanner --format '%n#p' --recursive /usr/local/bundle/gems \
| tr ',' '\n' \
| sort -u \
| awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \
)"; \
apk add --no-network --virtual .redmine-rundeps $runDeps; \
apk del --no-network .build-deps
Expand Down
14 changes: 6 additions & 8 deletions Dockerfile-alpine.template
Expand Up @@ -54,6 +54,8 @@ RUN set -eux; \
chmod -R ugo=rwX config db sqlite; \
find log tmp -type d -exec chmod 1777 '{}' +

# build for musl-libc, not glibc (see https://github.com/sparklemotion/nokogiri/issues/2075, https://github.com/rubygems/rubygems/issues/3174)
ENV BUNDLE_FORCE_RUBY_PLATFORM 1
RUN set -eux; \
\
apk add --no-cache --virtual .build-deps \
Expand Down Expand Up @@ -89,14 +91,10 @@ RUN set -eux; \
rm /usr/local/bundle/gems/rbpdf-font-1.19.*/lib/fonts/ttf2ufm/ttf2ufm; \
\
runDeps="$( \
find /usr/local -type f -executable -exec ldd '{}' ';' \
| awk '/=>/ { print $(NF-1) }' \
| sort -u \
| grep -v '^/usr/local/' \
| xargs -rn1 basename \
| grep -v 'ld-musl-' \
| sed -e 's/^/so:/' \
| sort -u \
scanelf --needed --nobanner --format '%n#p' --recursive /usr/local/bundle/gems \
| tr ',' '\n' \
| sort -u \
| awk 'system("[ -e /usr/local/lib/" $1 " ]") == 0 { next } { print "so:" $1 }' \
)"; \
apk add --no-network --virtual .redmine-rundeps $runDeps; \
apk del --no-network .build-deps
Expand Down

0 comments on commit 3fdebe9

Please sign in to comment.