docs/ucp/reference/install.md

74 lines
5.7 KiB
Markdown

---
description: Install Docker Universal Control Plane.
keywords:
- install, ucp
menu:
main:
identifier: ucp_ref_install
parent: ucp_ref
title: install
---
# docker/ucp install
Install UCP on this Docker Engine.
## Usage
```
docker run --rm -it \
--name ucp \
-v /var/run/docker.sock:/var/run/docker.sock \
docker/ucp \
install [command options]
```
## Description
The 'install' command will install the UCP controller on the
local engine. If you intend to install a multi-node cluster,
you must open firewall ports between the engines for the
following ports:
Ports: 443, 12376, 12379, 12380, 12381, 12382 and 2376 or the '--swarm-port'
You can optionally use an externally generated and signed certificate
for the UCP controller by specifying '--external-server-cert'. Create a storage
volume named 'ucp-controller-server-certs' with ca.pem, cert.pem, and key.pem
in the root directory before running the install.
A license file can optionally be injected during install by volume
mounting the file at '/docker_subscription.lic' in the tool. E.g.
`-v /path/to/my/docker_subscription.lic:/docker_subscription.lic`
## Options
| Option | Description |
|:-----------------------------------------------------------|:--------------------------------------------------------------------------------------------------------|
| `--debug`, `-D` | Enable debug. |
| `--jsonlog` | Produce json formatted output for easier parsing. |
| `--interactive`, `-i` | Enable interactive mode.,You will be prompted to enter all required information. |
| `--admin-username` | Specify the UCP admin username [$UCP_ADMIN_USER] |
| `--admin-password` | Specify the UCP admin password [$UCP_ADMIN_PASSWORD] |
| `--fresh-install` | Destroy any existing state and start fresh. |
| `--san` `[--san option --san option]` | Additional Subject Alternative Names for certs (e.g. `--san foo1.bar.com --san foo2.bar.com`). |
| `--host-address` | Specify the visible IP for this node. |
| `--swarm-port "2376"` | Select what port to run the local Swarm manager on (default: 2376) |
| `--controller-port "443"` | Select what port to run the local Controller on (default: 443) |
| `--dns` `[--dns option --dns option]` | Set custom DNS servers for the UCP infrastructure containers. |
| `--dns-opt` `[--dns-opt option --dns-opt option]` | Set DNS options for the UCP infrastructure containers. |
| `--dns-search` `[--dns-search option --dns-search option]` | Set custom DNS search domains for the UCP infrastructure containers. |
| `--kv-timeout` | Timeout in milliseconds for the KV store (set higher for a multi-datacenter cluster) |
| `--kv-snapshot-count` | Number of changes between KV store snapshots (all controllers must use the same value) (default: 10000) |
| `--registry-username` | Specify the username to pull required images with [$REGISTRY_USERNAME] |
| `--registry-password` | Specify the password to pull required images with [$REGISTRY_PASSWORD] |
| `--swarm-experimental` | Enable experimental Swarm features. Note: Use only for install, not join). |
| `--disable-tracking` | Disable anonymous tracking and analytics. |
| `--disable-usage` | Disable anonymous usage reporting. |
| `--external-server-cert` | Set up UCP with an external CA. |
| `--preserve-certs` | Don't (re)generate certs on the host if existing ones are found. |
| `--binpack` | Set Swarm scheduler to binpack mode (default spread). |
| `--random` | Set Swarm scheduler to random mode (default spread). |
| `--pull "missing"` | Specify image pull behavior (`always`, when `missing`, or `never`) (default: "missing") |
| `--skip-engine-discovery` | Do not configure engine for clustering |