One-Line Installation of Traefik Enterprise Edition on Docker Swarm mode¶
This page guides you through the installation of TraefikEE (Traefik Enterprise Edition) on Docker Swarm Mode.
Assistance with configuring or setting up a Docker Swarm Mode cluster are not included in this guide. If you need more information about Docker and Swarm, start with the following resources:
A Docker Swarm cluster:
- Supported versions: 17.06 to 18.09
- Access to the Docker engine of the swarm managers, using the
- At least 3 managers and 1 worker
Installation behind a proxy
In order to be able to install TraefikEE behind a proxy, you must define the
variables for each TraefikEE container.
In other words, you need to customize the compose files and add the following snippet into each of them, and perform a customized one-line installation.
services: control-node: # or bootstrap-node or data-node. # [...] environment: HTTP_PROXY: "http://127.0.0.1:3129" HTTPS_PROXY: "http://127.0.0.1:3129"
To install TraefikEE in Docker Swarm Mode, use the
traefikeectl install command line described in the Getting Started page, and add the option
traefikeectl install \ --licensekey="XXXXXXXXX" \ --dashboard \ --swarm
traefikeectl will expose port 80 and 443 on data nodes.
You can customize these ports with parameters
The previous command installs TraefikEE on your Docker Swarm infrastructure, with the following elements:
- A Control Plane with 1 node per Docker Swarm manager
- A Data Plane with 1 node per Docker Swarm worker
All the available installation options are listed on the traefikeectl Reference Page.
Customizing the One-Line Installation¶
Under the hood,
traefikeectl relies on multiple compose files to peform the installation.
To fully customize your setup and leverage the automatic
traefikeectl installation, you can download and tweak
those compose files and make
traefikeectl use your customized version instead of the original ones, using the
Getting the Compose Files¶
# In a subdirectory only containing compose files, here `./compose` curl -sSL \ https://s3.amazonaws.com/traefikee/examples/v1.0.0-beta23/swarm/traefikee-swarm-v1.0.0-beta23.tar.gz | tar xvz
./bootstrap-node.yml ./control-node.yml ./data-node-global.yml ./data-node-replicated.yml
Using the option
--swarm.composefilespath, you can tell
traefikeectl to use your customized compose files.
traefikeectl install \ --licensekey="XXXXXXXXX" \ --dashboard \ --swarm.composefilespath="./compose" --swarm
Validate that the TraefikEE cluster is installed correctly:
Name Availability Role Leader ---- ------------ ---- ------ e51a496c9ebc ACTIVE CONTROL NODE YES d3eeec1dbfd1 ACTIVE CONTROL NODE 77bd1afab740 ACTIVE CONTROL NODE 6222392b53dc ACTIVE DATA NODE bfd19ebc1afa ACTIVE DATA NODE
Your TraefikEE on Docker Swarm cluster is ready.
Nodes names are equal to their container hostname. By default, Swarm has used the container ID as hostname. This behavior is required by TraefikEE and containers hostname cannot be overridden.
Backup your Installation¶
Don't forget to setup regular backups using the
traefikeectl backup command.
More information can be found in the backup and restore documentation.
The cluster can be uninstalled with
More information about the uninstall options can be found on the traefikeectl Reference Page.