1 # Arvados base image (wheezy+rvm+Arvados source) in Docker
3 # Based on Debian Wheezy
4 FROM arvados/debian:wheezy
5 MAINTAINER Ward Vandewege <ward@curoverse.com>
7 ENV DEBIAN_FRONTEND noninteractive
9 # Install prerequisite packages for Arvados
11 # * Arvados source code in /usr/src/arvados, for preseeding gem installation
13 ADD apt.arvados.org.list /etc/apt/sources.list.d/
14 RUN apt-key adv --keyserver pool.sks-keyservers.net --recv 1078ECD7
18 ## KNOWN BUG: python-oauth2client needs specific versions
19 ## python-pyasn1=0.1.7 python-pyasn1-modules=0.0.5
20 ## but apt-get doesn't resolv them correctly. we have to
21 ## do it by hand here (or add apt_preferences if it gets too hairy)
22 RUN apt-get install -qy apt-utils git curl \
23 libcurl3 libcurl3-gnutls libcurl4-openssl-dev locales \
24 postgresql-server-dev-9.1 python-arvados-python-client \
25 python-google-api-python-client python-oauth2client python-pyasn1=0.1.7 python-pyasn1-modules=0.0.5
27 RUN gpg --keyserver pool.sks-keyservers.net --recv-keys D39DC0E3 && \
28 /bin/sed -ri 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \
29 /usr/sbin/locale-gen && \
30 curl -L https://get.rvm.io | bash -s stable && \
31 /usr/local/rvm/bin/rvm install 2.1 && \
32 /usr/local/rvm/bin/rvm alias create default ruby-2.1 && \
33 /bin/mkdir -p /usr/src/arvados
35 ADD generated/arvados.tar.gz /usr/src/arvados/
37 # Update gem. This (hopefully) fixes
38 # https://github.com/rubygems/rubygems.org/issues/613.
39 RUN /usr/local/rvm/bin/rvm-exec default gem update --system && \
40 /usr/local/rvm/bin/rvm-exec default gem install bundler -v 1.9.9 && \
41 /usr/local/rvm/bin/rvm-exec default bundle install --gemfile=/usr/src/arvados/apps/workbench/Gemfile && \
42 /usr/local/rvm/bin/rvm-exec default bundle install --gemfile=/usr/src/arvados/services/api/Gemfile && \
43 /usr/local/rvm/bin/rvm-exec default bundle install --gemfile=/usr/src/arvados/doc/Gemfile