Docker
Overview
The Cloudify free community version contains a fully functional Cloudify engine & most of the manager capabilities (read about the differences between our Cloudify versions).
This section describes how to install and run Cloudify Manager as a Docker container.
Verify that the target computer meets the prerequisites.
Install
Deploying the Cloudify trial manager as a Docker container is the easiest way to go. This tutorial assumes that you have Docker installed on a local or remote machine. Open your terminal and create/ start the Docker container (requires password).
docker run --name cfy_manager_local -p 80:80 cloudifyplatform/community-cloudify-manager-aio:latest
Verify that your manager is running by browsing to localhost when running locally, or to the hosting machine IP when the Docker server is remote.
The Cloudify login page should be displayed.
Note: the default login username and password are admin/admin.
Configure
commonly used docker run
flags:
FLAG | DESCRIPTION |
---|---|
--restart unless-stopped |
Auto-restart of the container |
security-opt secconmp:unconfined --cap-add SYS_ADMIN or alternatively --privileged |
When running a SystemD based container, giving the container elevated privileges is required for SystemD itself to run. When using a new enough Docker Engine (at least 17.05+), those flags can be omitted, but the host SELinux policy might need to be adjusted by doing setsebool -P container_manage_cgroup true . Neither those flags nor the SELinux adjustment, are required when using containers not based on SystemD. |
-v /sys/fs/cgroup:/sys/fs/cgroup:ro --tmpfs /run --tmpfs /run/lock |
Mounts required only when using a SystemD based container. Note that the host machine must also be using SystemD. |
-p 80:80 -p 5671:5671 -p 53333:53333 -p 8000:8000 or alternatively -p 443:443 |
The ports 5671 and 53333 are used for manager/ agent communication, while the port 80 or 443 is used for CLI/UI access to the manager. Port 8000 is used for the hello-world example and is optional. Using the -p flags, or even --network host , these ports can be forwarded from the host machine to the container. |
--name cfy_manager_local |
Is the name given to the container, for use with later docker exec calls. |
-v /some/absolute/path/to/config.yaml:/etc/cloudify/config.yaml:rw |
Mounting a yaml file at /etc/cloudify/config.yaml allows configuring the manager container, including setting an admin password and providing paths to TLS certificates. |
The container’s starter service will take a while to boot up all the manager components. Run cfy_manager wait-for-starter
to synchronously wait for the manager to fully start:
docker exec cfy_manager_local cfy_manager wait-for-starter
When done, wait-for-starter
will print out the manager’s admin password to stdout.