Registry and Images¶
General Principles¶
Registry variables are read by the reemo-relayws Ansible role.
REGISTRY_URL: the registry URL (e.g. registry.reemo.io)
REGISTRY_ENV: the prefix allowing the Ansible role to build image names in the format **REGISTRY_ENV**traefik
REGISTRY_USERNAME: username provided by Reemo support
REGISTRY_PASSWORD: password provided by Reemo support
Example resulting image: registry.reemo.io/reemoinfratraefik:latest
Tip
Check disk space on each node. Loading images may require several GB of free space.
Online Mode¶
All machines connect directly to the Reemo registry.
Requirements¶
HTTPS outbound open to registry.reemo.io:443
Credentials provided by Reemo support
Minimal Inventory¶
all:
vars:
REGISTRY_URL: "registry.reemo.io"
REGISTRY_ENV: "reemoinfra"
REGISTRY_USERNAME: "user"
REGISTRY_PASSWORD: "password"
relayws_manager:
hosts:
relayws_manager1:
ansible_host: "10.0.0.4"
relayws_manager2:
ansible_host: "10.0.0.5"
Quick Checks¶
Verify registry login (from a node):
docker login registry.reemo.io
Check the prefix used (example):
docker pull registry.reemo.io/reemoinfratraefik:latest
Confirm the image is present locally:
docker image ls
Proxy Mode¶
Nodes access the registry via an HTTP/HTTPS proxy.
Use the same inventory configuration as in Online mode.
To declare the proxy at the Docker service level:
Add the following line in the [Service] section of
/usr/lib/systemd/system/docker.service
EnvironmentFile=/etc/default/docker
Create the
/etc/default/dockerfile and add the following information:
http_proxy="http://< Proxy Server IP >:< Proxy Service Port >"
https_proxy="http://< Proxy Server IP >:< Proxy Service Port >"
On the proxy, allow access to the following URLs:
registry.reemo.io
registry-auth.reemo.io
Offline Mode¶
No Internet access from the nodes. Images are pre-packaged into tarballs. Use the Offline mode of the reemo-infra role to generate the image tarballs required by RELAYWS.
Generate the tarballs¶
Run this command with the reemo-infra Ansible role:
ansible-playbook -i inventory.yml playbooks/reemo-infra.yml \
--extra-vars "TARBALL_GENERATE=true" --tags tarball_generate
Load the tarballs¶
Run this command with the reemo-relayws Ansible role:
ansible-playbook -i inventory.yml playbooks/reemo-relayws.yml \
--extra-vars "LOAD_IMAGE=true" \
--extra-vars "TARBALL_PATH=/opt/reemo/images"
Note