Skip to content

Instantly share code, notes, and snippets.

@logicminds
Last active August 1, 2018 17:40
Show Gist options
  • Select an option

  • Save logicminds/625dbce99a30663dc1a1f230f995fa57 to your computer and use it in GitHub Desktop.

Select an option

Save logicminds/625dbce99a30663dc1a1f230f995fa57 to your computer and use it in GitHub Desktop.
dockerfiile for truffle ruby
FROM ubuntu:18.04
ARG GRAALVM_VERSION=1.0.0-rc4
RUN DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_FRONTEND=noninteractive apt-get update && \
apt-get install -y make gcc tzdata readline-common libreadline-dev locales llvm clang curl zlib1g-dev libssl-dev tree vim && \
curl -Ls https://github.com/oracle/truffleruby/releases/download/vm-${GRAALVM_VERSION}/ruby-installable-ce-${GRAALVM_VERSION}-linux-amd64.jar -o /tmp/ruby-installable-ce-${GRAALVM_VERSION}-linux-amd64.jar && \
curl -Ls "https://github.com/oracle/graal/releases/download/vm-${GRAALVM_VERSION}/graalvm-ce-${GRAALVM_VERSION}-linux-amd64.tar.gz" -o /usr/local/graalvm-ce-${GRAALVM_VERSION}-linux-amd64.tar.gz
RUN tar -zxf /usr/local/graalvm-ce-${GRAALVM_VERSION}-linux-amd64.tar.gz -C /usr/local && \
rm -f /usr/local/graalvm-ce-${GRAALVM_VERSION}/src.zip && \
ln -s /usr/local/graalvm-ce-${GRAALVM_VERSION} /usr/local/graalvm && \
ln -nfs /usr/share/zoneinfo/America/Los_Angeles /etc/localtime
ENV PATH=/usr/local/graalvm/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
ENV LANG=en_US.UTF-8
RUN gu install --file /tmp/ruby-installable-ce-${GRAALVM_VERSION}-linux-amd64.jar && \
/usr/local/graalvm-ce-${GRAALVM_VERSION}/jre/languages/ruby/lib/truffle/post_install_hook.sh
RUN locale-gen en_US.UTF-8 && \
gu rebuild-images ruby && echo 'gem: --no-rdoc --no-ri ' > /etc/gemrc && \
gem install bundle --no-rdoc --no-ri
# cleanup process
RUN rm -fr /var/lib/apt && rm -rf /tmp/ruby-installable-ce-${GRAALVM_VERSION}-linux-amd64.jar
CMD /usr/local/graalvm/bin/ruby
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment