Copied Apache vhost config from qr1hi.
authorTim Pierce <twp@clinicalfuture.com>
Mon, 11 Nov 2013 23:05:19 +0000 (18:05 -0500)
committerTim Pierce <twp@clinicalfuture.com>
Mon, 11 Nov 2013 23:05:19 +0000 (18:05 -0500)
docker/api/Dockerfile
docker/api/apache2_vhost [deleted file]
docker/api/apache2_vhost.in [new file with mode: 0644]
docker/config.rb

index 68c20ec7555f1bbf95065e304eb4c330f2dbb0d5..0c5aaae4faad2cdabc610a47c836bd6fe4315a49 100644 (file)
@@ -16,6 +16,7 @@ ADD generated/database.yml /usr/src/arvados/services/api/config/database.yml
 ADD generated/secret_token.rb /usr/src/arvados/services/api/config/initializers/secret_token.rb
 ADD generated/omniauth.rb /usr/src/arvados/services/api/config/initializers/omniauth.rb
 ADD generated/production.rb /usr/src/arvados/services/api/config/environments/production.rb
+ADD generated/apache2_vhost /etc/apache2/sites-available/arvados
 
 # Configure databases and users.
 ADD generated/config_databases.sh /tmp/config_databases.sh
@@ -30,7 +31,6 @@ RUN sh /tmp/config_rake.sh ; \
     rm /tmp/config_rake.sh
 
 # Configure Apache and Passenger.
-ADD apache2_vhost /etc/apache2/sites-available/arvados
 ADD passenger.conf /etc/apache2/conf.d/passenger
 RUN a2dissite default ; \
     a2ensite arvados ; \
diff --git a/docker/api/apache2_vhost b/docker/api/apache2_vhost
deleted file mode 100644 (file)
index 8f1ce2b..0000000
+++ /dev/null
@@ -1,19 +0,0 @@
-# VirtualHost definition for the Arvados API server
-
-<VirtualHost *:80>
-       ServerAdmin webmaster@localhost
-
-       DocumentRoot /usr/src/arvados/services/api/public
-       <Directory /usr/src/arvados/services/api/public>
-               AllowOverride all
-               Options -MultiViews
-       </Directory>
-
-       ErrorLog ${APACHE_LOG_DIR}/error.log
-
-       # Possible values include: debug, info, notice, warn, error, crit,
-       # alert, emerg.
-       LogLevel warn
-
-       CustomLog ${APACHE_LOG_DIR}/access.log combined
-</VirtualHost>
diff --git a/docker/api/apache2_vhost.in b/docker/api/apache2_vhost.in
new file mode 100644 (file)
index 0000000..d29be24
--- /dev/null
@@ -0,0 +1,52 @@
+# VirtualHost definition for the Arvados API server
+
+<VirtualHost *:80>
+  ServerName @@API_HOSTNAME@@.@@ARVADOS_DOMAIN@@
+  ServerAdmin sysadmin@clinicalfuture.com
+
+  RedirectPermanent / https://@@API_HOSTNAME@@.@@ARVADOS_DOMAIN@@/
+
+  LogLevel warn
+  ErrorLog  ${APACHE_LOG_DIR}/error.log
+  CustomLog ${APACHE_LOG_DIR}/access.log combined
+
+</VirtualHost>
+
+<VirtualHost *:443>
+  ServerName @@API_HOSTNAME@@.@@ARVADOS_DOMAIN@@
+  ServerAdmin sysadmin@clinicalfuture.com
+
+  RailsEnv production
+  RackBaseURI /
+  RailsAppSpawnerIdleTime 1200
+
+  # Enable streaming
+  PassengerBufferResponse off
+
+  # Index file and Document Root (where the public files are located)
+  DirectoryIndex index.html
+  DocumentRoot /usr/src/arvados/services/api/public
+
+  LogLevel warn
+  ErrorLog  ${APACHE_LOG_DIR}/ssl_error.log
+  CustomLog ${APACHE_LOG_DIR}/ssl_access.log combined
+
+  <Directory /usr/src/arvados/services/api/public>
+    Options Indexes FollowSymLinks MultiViews IncludesNoExec
+    AllowOverride None
+    Order allow,deny
+    allow from all
+  </Directory>
+
+  <IfModule mod_ssl.c>
+    SSLEngine on
+    # SSLCertificateChainFile /etc/ssl/certs/startcom.sub.class1.server.ca.pem
+    # SSLCACertificateFile    /etc/ssl/certs/startcom.ca.pem
+    # SSLCertificateFile      /etc/ssl/certs/qr1hi.arvadosapi.com.crt.pem
+    # SSLCertificateKeyFile   /etc/ssl/private/qr1hi.arvadosapi.com.key.pem
+    SSLCertificateFile    /etc/ssl/certs/ssl-cert-snakeoil.pem
+    SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
+    SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
+  </IfModule>
+
+</VirtualHost>
index 05b95d5125a48a74d0fb350cf983dffaf2438865..8f2f72402b26bb28fa3d8cc35ea257d9b2236fe4 100755 (executable)
@@ -36,6 +36,10 @@ end
 # the same tree structure as in the original source. Then all
 # the files can be added to the docker container with a single ADD.
 
+Dir.glob('*/generated/*') do |stale_file|
+  File.delete(stale_file)
+end
+
 Dir.glob('*/*.in') do |template_file|
   generated_dir = File.join(File.dirname(template_file), 'generated')
   Dir.mkdir(generated_dir) unless Dir.exists? generated_dir