/ansible-registry

Ansible role to install and configure docker registry service

Primary LanguagePythonApache License 2.0Apache-2.0

Ansible Role: registry


I have transferred this role to its own collection.
In future, I will not accept or process any further pull requests or issues here.

Please use the linked collection from now on!


Ansible role to install and configure docker registry.

GitHub Workflow Status GitHub issues GitHub release (latest by date) Ansible Quality Score

If latest is set for registry_version, the role tries to install the latest release version.
Please use this with caution, as incompatibilities between releases may occur!

The binaries are installed below /usr/local/bin/registry/${registry_version} and later linked to /usr/bin. This should make it possible to downgrade relatively safely.

The downloaded archive is stored on the Ansible controller, unpacked and then the binaries are copied to the target system. The cache directory can be defined via the environment variable CUSTOM_LOCAL_TMP_DIRECTORY. By default it is ${HOME}/.cache/ansible/registry. If this type of installation is not desired, the download can take place directly on the target system. However, this must be explicitly activated by setting registry_direct_download to true.

Requirements & Dependencies

Ansible Collections

ansible-galaxy collection install bodsch.core
ansible-galaxy collection install bodsch.scm

or

ansible-galaxy collection install --requirements-file collections.yml

Operating systems

Tested on

  • Arch Linux
  • Debian based
    • Debian 10 / 11
    • Ubuntu 20.10

Contribution

Please read Contribution

Development, Branches (Git Tags)

The master Branch is my Working Horse includes the "latest, hot shit" and can be complete broken!

If you want to use something stable, please use a Tagged Version!

Configuration

registry_version: 2.8.1

registry_release_download_url: https://github.com/distribution/distribution/releases

registry_system_user: registry
registry_system_group: registry
registry_config_dir: /etc/docker/registry

registry_direct_download: false

registry_service: {}
registry_log: {}
registry_storage: {}
registry_auth: {}
registry_middleware: {}
registry_reporting: {}
registry_http: {}
registry_notifications: {}
registry_redis: {}
registry_health: {}
registry_proxy: {}
registry_compatibility: {}
registry_validation: {}

registry_log

upstream doku

registry_log:
  accesslog:
    disabled: true
  level: info
  formatter: text
  fields: {}

registry_storage

upstream doku

registry_storage:
  filesystem:
    rootdirectory: /var/lib/registry
    maxthreads: 100
  delete:
    enabled: false
  cache:
    blobdescriptorsize: 10000

registry_auth

upstream doku

registry_auth: {}

registry_middleware

upstream doku

registry_middleware: {}

registry_reporting

upstream doku

registry_reporting: {}

registry_http

upstream doku

registry_http:
  addr: localhost:5000
  secret: "{{ ansible_host | b64encode }}"
  relativeurls: true
  debug:
    addr: localhost:5001
    prometheus:
      enabled: true
      path: /metrics

registry_notifications

upstream doku

registry_notifications: {}

registry_redis

upstream doku

registry_redis: {}

registry_health

upstream doku

registry_health: {}

registry_proxy

upstream doku

registry_proxy: {}

registry_compatibility

upstream doku

registry_compatibility: {}

registry_validation

upstream doku

registry_validation: {}

Author and License

  • Bodo Schulz

License

Apache

FREE SOFTWARE, HELL YEAH!