Skip to main content

ansible-container-registry - Ansible role to deploy a container registry

Project description

A role to deploy a container registry and provide methods to login to it. For now, the role only support Docker Registry v2. The login currently doesn’t work with hub.docker.com.

Role Variables

Variables used for container registry

Name

Default Value

Description

container_registry_debug

false

Enable debug option in Docker

container_registry_deploy_docker

true

Whether or not to deploy Docker

container_registry_deploy_docker_distribution

true

Whether or not to deploy Docker Distribution

container_registry_deployment_user

centos

User which needs to manage containers

container_registry_docker_options

–log-driver=journald –signature-verification=false –iptables=false –live-restore

Options given to Docker configuration

container_registry_docker_disable_iptables

false

Adds –iptables=false to /etc/sysconfig/docker-network config

container_registry_insecure_registries

[]

Array of insecure registries

container_registry_network_options

[undefined]

Docker networking options

container_registry_host

localhost

Docker registry host

container_registry_port

8787

Docker registry port

container_registry_mirror

[undefined]

Docker registry mirror

container_registry_storage_options

-s overlay2

Docker storage options

container_registry_selinux

false

Whether or not SElinux is enabled for containers

container_registry_additional_sockets

[undefined]

Additional sockets for containers

container_registry_skip_reconfiguration

false

Do not perform container registry reconfiguration if it’s already configured

container_registry_logins

[]

A dictionary containing registries and a username and a password associated with the registry. Example: {‘docker.io’: {‘myusername’: ‘mypassword’}, ‘registry.example.com:8787’: {‘otheruser’: ‘otherpass’}}

Requirements

  • ansible >= 2.4

  • python >= 2.6

Dependencies

None

Example Playbooks

Modify Image

The following playbook will deploy a Docker registry:

- hosts: localhost
  become: true
  roles:
    - container-registry

License

Apache 2.0

Running local testing

Local testing of this role can be done in a number of ways.

Mimic Zuul

Sometimes its nessisary to setup a test that will mimic what the OpenStack gate will do (Zuul). To run tests that minic the gate, python-virtualenv git, gcc, and ansible are required.

$ sudo yum install python-virtualenv git gcc

Once the packages are installed, create a python virtual environment.

$ python -m virtualenv --system-site-packages ~/test-python
$ ~/test-python/bin/pip install pip setuptools --upgrade

Now install the latest Ansible

$ ~/test-python/bin/pip install ansible

With Ansible installed, activate the virtual environment and run the run-local.yml test playbook.

$ source ~/test-python/bin/activate
(test-python) $ ansible-playbook -i 'localhost,' \
                                 -e "tripleo_src=$(realpath --relative-to="${HOME}" "$(pwd)")" \
                                 -e "ansible_user=${USER}" \
                                 -e "ansible_user_dir=${HOME}" \
                                 -e "ansible_connection=local" \
                                 zuul.d/playbooks/run-local.yml

Running Molecule directly

It is also possible to test this role using molecule directly. When running tests directly it is assumed all of the dependencies are setup and ready to run on the local workstation. When

$ molecule test --all

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ansible-role-container-registry-1.4.0.tar.gz (18.7 kB view details)

Uploaded Source

Built Distribution

ansible_role_container_registry-1.4.0-py2.py3-none-any.whl (18.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file ansible-role-container-registry-1.4.0.tar.gz.

File metadata

  • Download URL: ansible-role-container-registry-1.4.0.tar.gz
  • Upload date:
  • Size: 18.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.11

File hashes

Hashes for ansible-role-container-registry-1.4.0.tar.gz
Algorithm Hash digest
SHA256 320e95a39cf6ae46cf608909d7e6810a52952778722402bdc38abba4b9979dea
MD5 6e14c9ab6168cc84d0e1be8a59a0653c
BLAKE2b-256 3f61b91ff2fc5bbbd9258dcfd964559b512197a93964f49d0f8923b57af8c109

See more details on using hashes here.

File details

Details for the file ansible_role_container_registry-1.4.0-py2.py3-none-any.whl.

File metadata

  • Download URL: ansible_role_container_registry-1.4.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 18.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.11

File hashes

Hashes for ansible_role_container_registry-1.4.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 0b0cdd2db2b82268ee66179f63227aa7d1246b0d2ebcc7306b4baa831e87ed2b
MD5 5061a7b8557acaa728d431766a518e7e
BLAKE2b-256 158b11a32d52514205554b3a9b224dc21cfbe70d5fa24420c4fd8b7842524b8a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page