FROM alpine:3.7 MAINTAINER Disassembler RUN \ # Install Ruby runtime dependencies apk --no-cache add gdbm libressl readline zlib RUN \ # Install Ruby build dependencies apk --no-cache add --virtual .deps build-base autoconf gdbm-dev libressl-dev linux-headers readline-dev zlib-dev \ # Download and unpack Ruby && wget http://cache.ruby-lang.org/pub/ruby/2.3/ruby-2.3.6.tar.xz -O ruby.tar.xz \ && mkdir -p /usr/src/ruby \ && tar -xJf ruby.tar.xz -C /usr/src/ruby --strip-components=1 \ && rm ruby.tar.xz \ && cd /usr/src/ruby \ # Hackfix to suppress "Insecure world writable dir" warning && sed -ni 'p;13a #define ENABLE_PATH_CHECK 0' file.c \ # Configure compilation + hackfix to detect isnan/isinf macros && autoconf \ && ac_cv_func_isnan=yes ac_cv_func_isinf=yes ./configure --build=x86_64-linux-musl --disable-install-doc --enable-shared \ # Compile and install Ruby && make -j $(nproc) \ && make install \ # Install RubyGems and Bundler && mkdir -p /usr/local/etc \ && echo -e 'install: --no-document\nupdate: --no-document' >/usr/local/etc/gemrc \ && gem update --system \ # Cleanup && cd /tmp \ && rm -r /usr/src/ruby \ && apk --no-cache del .deps \ && rm -rf /root/.gem