{"id":40998414,"url":"https://github.com/netz39/ansible-role-host-docker","last_synced_at":"2026-01-22T08:17:08.257Z","repository":{"id":218420705,"uuid":"744227215","full_name":"netz39/ansible-role-host-docker","owner":"netz39","description":"Ansible Role for installing the Docker runtime environment on a (Debian) host.","archived":false,"fork":false,"pushed_at":"2026-01-15T18:35:19.000Z","size":75,"stargazers_count":0,"open_issues_count":6,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2026-01-15T20:53:33.676Z","etag":null,"topics":["ansible-role","debian","docker"],"latest_commit_sha":null,"homepage":"","language":"Jinja","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/netz39.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-01-16T21:42:23.000Z","updated_at":"2026-01-15T18:35:24.000Z","dependencies_parsed_at":"2024-01-21T21:27:58.675Z","dependency_job_id":"4e94cce1-93fb-442d-bd8a-55a555c21ca7","html_url":"https://github.com/netz39/ansible-role-host-docker","commit_stats":null,"previous_names":["netz39/ansible-role-host-docker"],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/netz39/ansible-role-host-docker","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netz39%2Fansible-role-host-docker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netz39%2Fansible-role-host-docker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netz39%2Fansible-role-host-docker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netz39%2Fansible-role-host-docker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/netz39","download_url":"https://codeload.github.com/netz39/ansible-role-host-docker/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/netz39%2Fansible-role-host-docker/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28659513,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-22T01:17:37.254Z","status":"online","status_checked_at":"2026-01-22T02:00:07.137Z","response_time":144,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible-role","debian","docker"],"created_at":"2026-01-22T08:17:08.183Z","updated_at":"2026-01-22T08:17:08.250Z","avatar_url":"https://github.com/netz39.png","language":"Jinja","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!--\nSPDX-FileCopyrightText: 2024 Netz39 Administrators \u003cadmin@netz39.de\u003e\nSPDX-License-Identifier: CC-BY-4.0\n--\u003e\n\n# Host Docker\n\n[![REUSE status](https://api.reuse.software/badge/github.com/netz39/ansible-role-host-docker)](https://api.reuse.software/info/github.com/netz39/ansible-role-host-docker)\n![license MIT](https://img.shields.io/badge/license-MIT-informational)\n\nAnsible Role for installing the Docker runtime environment on your (Debian) host.\n\n## Table of Contents\n\n- [Requirements](#requirements)\n- [Install](#install)\n- [Role Variables](#role-variables)\n- [Dependencies](#dependencies)\n- [Example Playbook](#example-playbook)\n- [Contributing](#contributing)\n- [License](#license)\n- [Author Information](#author-information)\n\n## Requirements\n\nThe role has been tested on Debian 12 (\"bookworm\"), Debian 13 (\"trixie\")\nand Ubuntu 24.04 (LTS) target hosts.\nOther distribution have not been tested.\n\nIf your target machine has Python 3.12 or later, you need ansible 2.16\nor later, otherwise downloading the apt key fails (see\n[#17](https://github.com/netz39/ansible-role-host-docker/issues/17)).\n\n## Install\n\nThis role can be installed through your *requirements.yml*.\n\nPlease note that `docker-compose` is now a part of the Docker client and\navailable through the `docker compose` command.\n\nExample:\n\n```yaml\n---\nroles:\n  - name: netz39.host_docker\n    src: git+https://github.com/netz39/ansible-role-host-docker.git\n    version: v0.2.1\n```\n\n## Role Variables\n\nYou can go with just the defaults.\n\n### Optional Variables\n\n* `docker_apt_key_fpr`:\n    * Default: *none*\n      If this variable is not set, **no** OpenPGP key fingerprint is checked!\n    * Description: Set the fingerprint of the debian repo signing key\n      here to notice signing key changes.\n* `docker_apt_key_url`:\n    * Default: https://download.docker.com/linux/debian/gpg\n    * Description: Address to download the OpenPGP key, which is used to\n      sign the third party apt repo.\n* `docker_apt_keyrings_dir`:\n    * Default: */etc/apt/keyrings*\n    * Description: Directory to put the downloaded OpenPGP file into.\n      Default is Debian standard path for such keys.\n      Can be left on default in almost all cases.\n* `docker_apt_uri`:\n    * Default: https://download.docker.com/linux/debian\n    * Description: Address of the third party apt repo to download\n      Debian packages from.\n      You might want to set this to the address of a local apt proxy\n      like *approx*, *apt-cacher* or the like.\n* `docker_image_prune`:\n    * Default: `false`\n    * Description: Enables a systemd timer to automatically prune Docker\n      images without container references. You can check the timer with\n      `sudo systemctl list-timers --all` and the results with\n      `sudo journalctl -xeu docker-image-prune`.\n* `docker_data_root`:\n    * Default: */var/lib/docker*\n    * Description: Persistent data directory where docker puts\n      containers, images, volumes, etc.\n      See [Daemon data directory](https://docs.docker.com/engine/daemon/#daemon-data-directory)\n      in docker documentation for details.\n      Often set to a separate volume which is not the root volume of\n      the machine docker is installed to.\n* `docker_storage_driver`:\n    * Default: overlay2\n    * Description: See [Select a storage driver](https://docs.docker.com/engine/storage/drivers/select-storage-driver/)\n      in docker documentation for detailed description.\n* `docker_v6_cidr`:\n    * Default: *empty*\n    * Description: Enable IPv6 for the docker default network and set\n      the given CIDR.\n* `docker_log_max_size`:\n    * Default: *100m*\n    * Description: Set the maximum size of a single log file.\n      See [Configure logging drivers](https://docs.docker.com/config/containers/logging/configure/)\n      in docker documentation for details.\n* `docker_default_dns`:\n    * Default: *empty*\n    * Description: List of DNS servers to use as a default for docker\n      containers. If empty, the host's DNS servers are used.\n\n## Dependencies\n\nNo external dependencies.\nTested with ansible 2.14.18 on Debian GNU/Linux 12 (bookworm).\n\n## Example Playbook\n\n### Minimal Example\n\n```yaml\n---\n- hosts: docker_host\n  become: true\n\n  roles:\n    - role: netz39.host_docker\n```\n\n### Example with Common Options\n\n```yaml\n---\n- hosts: miraculix\n  become: true\n\n  roles:\n    - role: netz39.host_docker\n      vars:\n        docker_apt_uri: \"http://deb.example.internal:9999/docker\"\n        docker_apt_key_url: \"{{ docker_apt_uri }}/gpg\"\n        docker_apt_key_fpr: \"9DC858229FC7DD38854AE2D88D81803C0EBFCD88\"\n        docker_data_root: \"/srv/docker\"\n        docker_cron_image_prune: true\n        docker_v6_cidr: \"2001:db8:1::/64\"\n        docker_default_dns:\n          - \"192.0.2.1\"\n          - \"2001:db8::1\"\n```\n\n## Contributing\n\nPull requests accepted.\n\n## License\n\nThis project is licensed unter the [MIT License](LICENSES/MIT.txt)\nunless noted differently.\n\n© 2024 [Netz39 Administrators](http://www.netz39.de/) and contributors.\n\n## Author Information\n\nNotable amount of contributions by (in alphabetic order):\n\n- Alexander Dahl ([@LeSpocky](https://github.com/LeSpocky/))\n- David ([@24367dfa](https://github.com/24367dfa))\n- Stefan Haun ([@penguineer](https://github.com/penguineer))\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetz39%2Fansible-role-host-docker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnetz39%2Fansible-role-host-docker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnetz39%2Fansible-role-host-docker/lists"}