Merge branch 'master' into 2221-complete-docker
[arvados.git] / docker / workbench / Dockerfile
index ce7a5ca80adf35d6cd50c06ac67bbe765c9951cc..bd0bf4551eb485e418fc31f0da324edee2c347df 100644 (file)
@@ -1,49 +1,34 @@
 # Arvados Workbench Docker container.
 
-FROM arvados/base
-MAINTAINER Ward Vandewege <ward@clinicalfuture.com>
+FROM arvados/passenger
+MAINTAINER Ward Vandewege <ward@curoverse.com>
 
-ENV DEBIAN_FRONTEND noninteractive
-
-# Install packages
-# Fix Locale
 # Update Arvados source
 RUN /bin/mkdir -p /usr/src/arvados/apps
 ADD generated/workbench.tar.gz /usr/src/arvados/apps/
-RUN \
-    apt-get update ;\
-    apt-get install -q -y apt-utils git curl procps apache2-mpm-worker locales \
-                          libcurl4-openssl-dev apache2-threaded-dev libapr1-dev libaprutil1-dev ;\
-    curl -L https://get.rvm.io | bash -s stable --ruby=${RUBY_VERSION_NUM} ;\
-    /bin/sed -ri 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen ;\
-    /usr/sbin/locale-gen ;\
-    touch /usr/src/arvados/apps/workbench/log/production.log ;\
-    chmod 666 /usr/src/arvados/apps/workbench/log/production.log ;\
-    touch /usr/src/arvados/apps/workbench/db/production.sqlite3 ;\
-    bundle install --gemfile=/usr/src/arvados/apps/workbench/Gemfile ;\
-    cd /usr/src/arvados/apps/workbench; rake assets:precompile ;\
-    passenger-install-apache2-module --auto ;\
-    a2enmod rewrite
+ADD generated/secret_token.rb /usr/src/arvados/apps/workbench/config/initializers/secret_token.rb
+ADD generated/production.rb /usr/src/arvados/apps/workbench/config/environments/production.rb
+ADD passenger.conf /etc/apache2/conf.d/passenger
+
+
+RUN bundle install --gemfile=/usr/src/arvados/apps/workbench/Gemfile && \
+    touch /usr/src/arvados/apps/workbench/log/production.log && \
+    chmod 666 /usr/src/arvados/apps/workbench/log/production.log && \
+    touch /usr/src/arvados/apps/workbench/db/production.sqlite3 && \
+    bundle install --gemfile=/usr/src/arvados/apps/workbench/Gemfile && \
+    cd /usr/src/arvados/apps/workbench && \
+    rake assets:precompile && \
+    chown -R www-data:www-data /usr/src/arvados/apps/workbench
 
 # Configure Apache
 ADD generated/apache2_vhost /etc/apache2/sites-available/workbench
 RUN \
-  a2dissite default ;\
-  a2ensite workbench 
-
-# Set up the production environment
-ADD generated/secret_token.rb /usr/src/arvados/apps/workbench/config/initializers/secret_token.rb
-ADD generated/production.rb /usr/src/arvados/apps/workbench/config/environments/production.rb
-ADD passenger.conf /etc/apache2/conf.d/passenger
+  a2dissite default && \
+  a2ensite workbench && \
+  a2enmod rewrite
 
-# Finally, start Apache
-ENV APACHE_RUN_USER    www-data
-ENV APACHE_RUN_GROUP   www-data
-ENV APACHE_PID_FILE    /var/run/apache2.pid
-ENV APACHE_RUN_DIR     /var/run/apache2
-ENV APACHE_LOCK_DIR    /var/lock/apache2
-ENV APACHE_LOG_DIR     /var/log/apache2
-ENV LANG               C
+ADD apache2_foreground.sh /etc/apache2/foreground.sh
 
-CMD ["/usr/sbin/apache2", "-D", "FOREGROUND"]
+# Start Apache
+CMD ["/etc/apache2/foreground.sh"]