3 navsection: installguide
4 title: Installing with Docker
7 {% include 'alert_docker' %}
11 # A GNU/Linux (virtual) machine
12 # A working Docker installation
14 h2. Download the source tree
17 <pre><code>~$ <span class="userinput">cd $HOME</span> # (or wherever you want to install)
18 ~$ <span class="userinput">git clone https://github.com/curoverse/arvados.git</span>
19 </code></pre></notextile>
21 See also: "Downloading the source code":https://arvados.org/projects/arvados/wiki/Download on the Arvados wiki.
23 h2. Building the Arvados Docker containers
25 First of all, a suitable @config.yml@ file is needed.
28 <pre><code>~$ <span class="userinput">cd arvados/docker</span>
29 ~$ <span class="userinput">cp config.yml.example config.yml</span>
30 </code></pre></notextile>
32 Edit the @config.yml@ file and fill in values for at a minimum these
41 Then build the docker containers (this will take a while):
45 ~$ <span class="userinput">./build.sh</span>
48 Step 9 : ADD apache2_foreground.sh /etc/apache2/foreground.sh
50 Step 10 : CMD ["/etc/apache2/foreground.sh"]
51 ---> Running in 82d59061ead8
53 Successfully built 72cee36a9281
54 Removing intermediate container 2bc8c98c83c7
55 Removing intermediate container 9457483a59cf
56 Removing intermediate container 7cc5723df67c
57 Removing intermediate container 5cb2cede73de
58 Removing intermediate container 0acc147a7f6d
59 Removing intermediate container 82d59061ead8
60 Removing intermediate container 9c022a467396
61 Removing intermediate container 16044441463f
62 Removing intermediate container cffbbddd82d1
64 </code></pre></notextile>
66 If all goes well, you should now have a number of docker images built:
69 <pre><code>~$ <span class="userinput">docker.io images</span>
70 REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
71 arvados/sso latest 72cee36a9281 11 seconds ago 1.727 GB
72 arvados/keep latest c3842f856bcb 56 seconds ago 210.6 MB
73 arvados/workbench latest b91aa980597c About a minute ago 2.07 GB
74 arvados/doc latest 050e9e6b8213 About a minute ago 1.442 GB
75 arvados/api latest 79843d0a8997 About a minute ago 2.112 GB
76 arvados/passenger latest 2342a550da7f 2 minutes ago 1.658 GB
77 arvados/base latest 68caefd8ea5b 5 minutes ago 1.383 GB
78 arvados/debian 7.5 6e32119ffcd0 8 minutes ago 116.8 MB
79 arvados/debian latest 6e32119ffcd0 8 minutes ago 116.8 MB
80 arvados/debian wheezy 6e32119ffcd0 8 minutes ago 116.8 MB
81 </code></pre></notextile>
83 h2. Running the Arvados Docker containers
85 The @arvdock@ command can be used to start and stop the docker containers. It has a number of options:
89 ~$ <span class="userinput">./arvdock -h</span>
91 usage: ./arvdock (start|stop|restart|test) [options]
93 ./arvdock start/stop/restart options:
94 -d [port], --doc[=port] Documentation server (default port 9898)
95 -w [port], --workbench[=port] Workbench server (default port 9899)
96 -s [port], --sso[=port] SSO server (default port 9901)
97 -a [port], --api[=port] API server (default port 9900)
98 -k, --keep Keep servers
99 --ssh Enable SSH access to server containers
100 -h, --help Display this help and exit
102 If no options are given, the action is applied to all servers.
104 ./arvdock test [testname] [testname] ...
105 By default, all tests are run.
110 The @--ssh@ option can be useful to debug issues with the Docker containers; it allows you to ssh into the running containers as the @root@ user, provided you have access to the private key that matches the public key specified in @config.yml@'s PUBLIC_KEY_PATH variable.
112 Start the docker containers:
116 ~$ <span class="userinput">./arvdock start</span>
119 /usr/bin/docker.io run -d -i -t -p 9901:443 --name sso_server arvados/sso
122 /usr/bin/docker.io run -d -i -t -p 9900:443 --name api_server --link sso_server:sso arvados/api
125 /usr/bin/docker.io run -d -i -t -p 25107:25107 --name keep_server_0 -v /tmp/tmp.aCSx8Pq6Wb:/dev/keep-0 --link api_server:api arvados/keep
128 /usr/bin/docker.io run -d -i -t -p 25108:25107 --name keep_server_1 -v /tmp/tmp.m4OQ9WB73G:/dev/keep-0 --link api_server:api arvados/keep
131 /usr/bin/docker.io run -d -i -t -p 9898:80 --name doc_server arvados/doc
133 *****************************************************************
134 You can access the Arvados documentation at http://localhost:9898
135 *****************************************************************
139 /usr/bin/docker.io run -d -i -t -p 9899:80 --name workbench_server --link api_server:api arvados/workbench
141 *****************************************************************
142 You can access the Arvados workbench at http://localhost:9899
143 *****************************************************************
144 </code></pre></notextile>
146 h2. Accessing workbench
148 Point your browser to the Dockerized workbench:
151 <pre><code><span class="userinput">https://localhost:9899</span>
155 Now use the google account you specified as @API_AUTO_ADMIN_USER@ in @config.yml@ to log in. You will be prompted *twice* by your browser that you are accessing a site with an untrusted SSL certificate. This is normal; by default the Arvados Docker installation uses self-signed SSL certificates for the SSO and API servers, respectively.