5663: update documentation to use "puts rand" in place of "rake secret"
[arvados.git] / docker / workbench / Dockerfile
index fbf18216aed8bcb52b98a7916e9c2a394c0c6f28..94d9f87765aeaf88abe53e9ff1c93e61421214ef 100644 (file)
@@ -1,30 +1,35 @@
 # Arvados Workbench Docker container.
 
 FROM arvados/passenger
-MAINTAINER Ward Vandewege <ward@clinicalfuture.com>
+MAINTAINER Ward Vandewege <ward@curoverse.com>
+
+# We need graphviz for the provenance graphs
+RUN apt-get update -qq
+RUN apt-get install -qqy graphviz
 
 # Update Arvados source
 RUN /bin/mkdir -p /usr/src/arvados/apps
 ADD generated/workbench.tar.gz /usr/src/arvados/apps/
-
-RUN 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
+ADD generated/workbench_rails_env /etc/
+RUN /bin/cp /usr/src/arvados/apps/workbench/config/environments/$(cat /etc/workbench_rails_env).rb.example /usr/src/arvados/apps/workbench/config/environments/$(cat /etc/workbench_rails_env).rb
+ADD generated/application.yml /usr/src/arvados/apps/workbench/config/application.yml
+
+RUN RAILS_ENV=$(cat /etc/workbench_rails_env) && \
+    /usr/local/rvm/bin/rvm-exec default bundle install --gemfile=/usr/src/arvados/apps/workbench/Gemfile && \
+    touch /usr/src/arvados/apps/workbench/log/$RAILS_ENV.log && \
+    chmod 666 /usr/src/arvados/apps/workbench/log/$RAILS_ENV.log && \
+    touch /usr/src/arvados/apps/workbench/db/$RAILS_ENV.sqlite3 && \
+    cd /usr/src/arvados/apps/workbench && \
+    /usr/local/rvm/bin/rvm-exec default bundle exec 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 ;\
+  a2dissite default && \
+  a2ensite workbench && \
   a2enmod rewrite
 
-# 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
-
 ADD apache2_foreground.sh /etc/apache2/foreground.sh
 
 # Start Apache