3235: Merge branch 'master' into 3235-top-nav-site-search
[arvados.git] / doc / install / install-docker.html.textile.liquid
index fb7a7f1c94cb67a7c153a426f1ccdcc2af7664a4..9b4cf6d6afbe00b86673b58bcb0cc6e23259dfb7 100644 (file)
@@ -4,12 +4,14 @@ navsection: installguide
 title: Installing with Docker
 ...
 
-{% include 'alert_docker' %}
+h2. Purpose
 
-h2. Prerequisites:
+This installation method is appropriate for local testing, evaluation, and development. For production use, this method is not recommended.
+
+h2. Prerequisites
 
 # A GNU/Linux (virtual) machine
-# A working Docker installation
+# A working Docker installation (see "Installing Docker":https://docs.docker.com/installation/)
 
 h2. Download the source tree
 
@@ -22,21 +24,83 @@ See also: "Downloading the source code":https://arvados.org/projects/arvados/wik
 
 h2. Building the Arvados Docker containers
 
-First we need a suitable @config.yml@ file.
+First of all, a suitable @config.yml@ file is needed.
 
 <notextile>
 <pre><code>~$ <span class="userinput">cd arvados/docker</span>
 ~$ <span class="userinput">cp config.yml.example config.yml</span>
 </code></pre></notextile>
 
-Now it's time to edit the @config.yml@ file and fill in suitable values for at a minimum these parameters:
+Edit the @config.yml@ file and fill in values for at a minimum these
+parameters:
 
 <pre>
 PUBLIC_KEY_PATH
+ARVADOS_USER_NAME
 API_HOSTNAME
 API_AUTO_ADMIN_USER
 </pre>
 
+Then build the docker containers (this will take a while):
+
+<notextile>
+<pre><code>
+~$ <span class="userinput">./build.sh</span>
+...
+Step 7 : ADD generated/setup.sh /usr/local/bin/setup.sh
+ ---> d7c0e7fdf7ab
+Removing intermediate container f3d81180795d
+Step 8 : CMD ["/usr/bin/supervisord", "-n"]
+ ---> Running in 84c64cb9f0d5
+ ---> d6cbb5002604
+Removing intermediate container 84c64cb9f0d5
+Successfully built d6cbb5002604
+date >shell-image
+</code></pre></notextile>
+
+If all goes well, you should now have a number of docker images built:
+
+<notextile>
+<pre><code>~$ <span class="userinput">docker.io images</span>
+REPOSITORY              TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
+arvados/shell           latest              d6cbb5002604        10 minutes ago      1.613 GB
+arvados/sso             latest              377f1fa0108e        11 minutes ago      1.807 GB
+arvados/keep            latest              ade0e0d2dd00        12 minutes ago      210.8 MB
+arvados/workbench       latest              b0e4fb6da385        12 minutes ago      2.218 GB
+arvados/doc             latest              4b64daec9454        12 minutes ago      1.524 GB
+arvados/compute         latest              7f1f5f7faf54        13 minutes ago      1.862 GB
+arvados/slurm           latest              f5bfd1008e6b        17 minutes ago      1.573 GB
+arvados/api             latest              6b93c5f5fc42        17 minutes ago      2.274 GB
+arvados/passenger       latest              add2d11fdf24        18 minutes ago      1.738 GB
+arvados/base            latest              81eaadd0c6f5        22 minutes ago      1.463 GB
+arvados/debian          7.6                 f339ce275c01        6 days ago          116.8 MB
+arvados/debian          latest              f339ce275c01        6 days ago          116.8 MB
+arvados/debian          wheezy              f339ce275c01        6 days ago          116.8 MB
+crosbymichael/skydock   latest              e985023521f6        3 months ago        510.7 MB
+crosbymichael/skydns    next                79c99a4608ed        3 months ago        525 MB
+crosbymichael/skydns    latest              1923ce648d4c        5 months ago        137.5 MB
+</code></pre></notextile>
+
+h2. Updating the Arvados Docker containers
+
+If there has been an update to the Arvados Docker building code, it is safest to rebuild the Arvados Docker images from scratch. All build information can be cleared with the 'clean' option to build.sh:
+
+<notextile>
+<pre><code>~$ <span class="userinput">./build.sh clean</span></code></pre>
+</notextile>
+
+You can also use 'realclean', which does what 'clean' does and in addition removes all Arvados Docker containers and images from your system, with the exception of the arvados/debian image.
+
+<notextile>
+<pre><code>~$ <span class="userinput">./build.sh realclean</span></code></pre>
+</notextile>
+
+Finally, the 'deepclean' option does what 'realclean' does, and also removes the arvados/debian, crosbymichael/skydns and crosbymichael/skydock images.
+
+<notextile>
+<pre><code>~$ <span class="userinput">./build.sh deepclean</span></code></pre>
+</notextile>
+
 h2. Running the Arvados Docker containers
 
 The @arvdock@ command can be used to start and stop the docker containers. It has a number of options:
@@ -48,13 +112,16 @@ The @arvdock@ command can be used to start and stop the docker containers. It ha
 usage: ./arvdock (start|stop|restart|test) [options]
 
 ./arvdock start/stop/restart options:
-  -d [port], --doc[=port]        Documentation server (default port 9898)
-  -w [port], --workbench[=port]  Workbench server (default port 9899)
-  -s [port], --sso[=port]        SSO server (default port 9901)
-  -a [port], --api[=port]        API server (default port 9900)
-  -k, --keep                     Keep servers
-  --ssh                          Enable SSH access to server containers
-  -h, --help                     Display this help and exit
+  -d[port], --doc[=port]        Documentation server (default port 9898)
+  -w[port], --workbench[=port]  Workbench server (default port 9899)
+  -s[port], --sso[=port]        SSO server (default port 9901)
+  -a[port], --api[=port]        API server (default port 9900)
+  -c, --compute                 Compute nodes (starts 2)
+  -v, --vm                      Shell server
+  -n, --nameserver              Nameserver
+  -k, --keep                    Keep servers
+  --ssh                         Enable SSH access to server containers
+  -h, --help                    Display this help and exit
 
   If no options are given, the action is applied to all servers.