Changes to permit keep_server containers to authenticate to api_server.
[arvados.git] / docker / README.md
1 Deploying Arvados in Docker Containers
2 ======================================
3
4 This file explains how to build and deploy Arvados servers in Docker
5 containers, so that they can be run easily in different environments
6 (a dedicated server, a developer's laptop, a virtual machine,
7 etc).
8
9 This is a work in progress; instructions will almost certainly be
10 incomplete and possibly out of date.
11
12 Prerequisites
13 -------------
14
15 * Docker
16
17   Docker is a Linux container management system based on LXC. It is a
18   very young system but is being developed rapidly.
19   [Installation packages](http://www.docker.io/gettingstarted/#h_installation)
20   are available for several platforms.
21
22 * Ruby (any version)
23
24 * sudo privileges to run `debootstrap`
25
26 Building
27 --------
28
29 1. Copy `config.yml.example` to `config.yml` and edit it with settings
30    for your installation.
31 2. Run `make` to build the following Docker images:
32
33    * arvados/api       - the Arvados API server
34    * arvados/doc       - Arvados documentation
35    * arvados/warehouse - Keep, the Arvados content-addressable filesystem
36    * arvados/workbench - the Arvados console
37    * arvados/sso       - the Arvados single-signon authentication server
38
39    You may also build Docker images for individual Arvados services:
40
41         $ make api-image
42         $ make doc-image
43         $ make warehouse-image
44         $ make workbench-image
45         $ make sso-image
46
47 Deploying
48 ---------
49
50 1. Make sure the `ARVADOS_DNS_SERVER` has been provisioned with the
51    following DNS entries, resolving to the appropriate IP addresses
52    where each service will be deployed.
53
54    * $API_HOSTNAME
55    * keep0.$API_HOSTNAME
56    * compute0.$API_HOSTNAME
57    * controller.$API_HOSTNAME
58    * workbench.$API_HOSTNAME
59
60 2. The `run.sh` script in this directory will start all Arvados
61    servers on your machine.
62