All Projects → ansible-collections → community.docker

ansible-collections / community.docker

Licence: GPL-3.0 license
Community Docker Collection for Ansible: modules and plugins for working with Docker

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to community.docker

ansible-meraki
Cisco Meraki Ansible Collection
Stars: ✭ 54 (-46%)
Mutual labels:  ansible-collection
collection template
A GitHub Template repo to use as the basis for future repos
Stars: ✭ 64 (-36%)
Mutual labels:  ansible-collection
cloudera.cluster
Ansible for automating Cloudera Clusters on baremetal or similar. Main development is a Collection.
Stars: ✭ 27 (-73%)
Mutual labels:  ansible-collection
azure
Development area for Azure Collections
Stars: ✭ 176 (+76%)
Mutual labels:  ansible-collection
community.windows
Windows community collection for Ansible
Stars: ✭ 148 (+48%)
Mutual labels:  ansible-collection
ansible-openwrt
Ansible collection to configure your OpenWrt devices more quickly and automatically (without Python)
Stars: ✭ 34 (-66%)
Mutual labels:  ansible-collection
vmware.vmware rest
Ansible Collection for VMWare (REST modules)
Stars: ✭ 60 (-40%)
Mutual labels:  ansible-collection
ovirt-ansible-collection
Ansible collection with official oVirt modules and roles
Stars: ✭ 53 (-47%)
Mutual labels:  ansible-collection
community.hashi vault
Ansible collection for managing and working with HashiCorp Vault.
Stars: ✭ 44 (-56%)
Mutual labels:  ansible-collection
sensu-go-ansible
Official Ansible module for Sensu Go
Stars: ✭ 30 (-70%)
Mutual labels:  ansible-collection
overview
Collections overview, how to request a namespace
Stars: ✭ 226 (+126%)
Mutual labels:  ansible-collection
dellemc.enterprise sonic
Ansible Network Collection for Enterprise SONiC Distribution by Dell Technologies
Stars: ✭ 26 (-74%)
Mutual labels:  ansible-collection
community.digitalocean
This Ansible collection contains modules for assisting in the automation of the DigitalOcean cloud.
Stars: ✭ 115 (+15%)
Mutual labels:  ansible-collection
kubernetes.core
The collection includes a variety of Ansible content to help automate the management of applications in Kubernetes and OpenShift clusters, as well as the provisioning and maintenance of clusters themselves.
Stars: ✭ 159 (+59%)
Mutual labels:  ansible-collection
community.network
Ansible Community Network Collection
Stars: ✭ 85 (-15%)
Mutual labels:  ansible-collection
Ansible Collection Hardening
This Ansible collection provides battle tested hardening for Linux, SSH, nginx, MySQL
Stars: ✭ 2,543 (+2443%)
Mutual labels:  ansible-collection
hetzner.hcloud
A collection containing modules to manage resources on the Hetzner Cloud.
Stars: ✭ 58 (-42%)
Mutual labels:  ansible-collection
ansible-unity
Ansible Modules for Dell EMC Unity
Stars: ✭ 19 (-81%)
Mutual labels:  ansible-collection
ansible-nae
Cisco NAE Ansible Collection
Stars: ✭ 12 (-88%)
Mutual labels:  ansible-collection
community.zabbix
Zabbix Ansible modules
Stars: ✭ 224 (+124%)
Mutual labels:  ansible-collection

Docker Community Collection

Doc Build Status Codecov

This repo contains the community.docker Ansible Collection. The collection includes many modules and plugins to work with Docker.

Please note that this collection does not support Windows targets. The connection plugins included in this collection support Windows targets on a best-effort basis, but we are not testing this in CI.

Tested with Ansible

Tested with the current ansible-core 2.11, ansible-core 2.12, and ansible-core 2.13 releases, and the current development version of ansible-core. Ansible/ansible-base versions before 2.11.0 are not supported.

Please note that Ansible 2.9 and ansible-base 2.10 are no longer supported. If you need to use them, use community.docker 2.x.y. Also note that this collection does not work with ansible-core 2.11 (this includes ansible-base and Ansible 2.9) on Python 2.12+.

External requirements

Some modules and plugins require Docker CLI, or other external, programs. Some require the Docker SDK for Python and some use requests to directly communicate with the Docker daemon API. All modules and plugins require Python 2.7 or later. Python 2.6 is no longer supported; use community.docker 2.x.y if you need to use Python 2.6.

Installing the Docker SDK for Python also installs the requirements for the modules and plugins that use requests. If you want to directly install the Python libraries instead of the SDK, you need the following ones:

  • requests;
  • pywin32 when using named pipes on Windows with the Windows 32 API;
  • paramiko when using SSH to connect to the Docker daemon with use_ssh_client=false;
  • pyOpenSSL when using TLS to connect to the Docker daemon;
  • backports.ssl_match_hostname when using TLS to connect to the Docker daemon on Python 2.

If you have Docker SDK for Python < 2.0.0 installed (docker-py), you can still use it for modules that support it, though we recommend to uninstall it and then install docker, the Docker SDK for Python >= 2.0.0. Note that both libraries cannot be installed at the same time. If you accidentally did install them simultaneously, you have to uninstall both before re-installing one of them.

Included content

  • Connection plugins:
    • community.docker.docker: use Docker containers as remotes using the Docker CLI program
    • community.docker.docker_api: use Docker containers as remotes using the Docker API
    • community.docker.nsenter: execute commands on the host running the controller container
  • Inventory plugins:
    • community.docker.docker_containers: dynamic inventory plugin for Docker containers
    • community.docker.docker_machine: collect Docker machines as inventory
    • community.docker.docker_swarm: collect Docker Swarm nodes as inventory
  • Modules:
    • Docker:
      • community.docker.docker_container: manage Docker containers
      • community.docker.docker_container_exec: run commands in Docker containers
      • community.docker.docker_container_info: retrieve information on Docker containers
      • community.docker.docker_host_info: retrieve information on the Docker daemon
      • community.docker.docker_image: manage Docker images
      • community.docker.docker_image_info: retrieve information on Docker images
      • community.docker.docker_image_load: load Docker images from archives
      • community.docker.docker_login: log in and out to/from registries
      • community.docker.docker_network: manage Docker networks
      • community.docker.docker_network_info: retrieve information on Docker networks
      • community.docker.docker_plugin: manage Docker plugins
      • community.docker.docker_prune: prune Docker containers, images, networks, volumes, and build data
      • community.docker.docker_volume: manage Docker volumes
      • community.docker.docker_volume_info: retrieve information on Docker volumes
    • Docker Compose:
      • community.docker.docker_compose: manage Docker Compose files
    • Docker Swarm:
      • community.docker.docker_config: manage configurations
      • community.docker.docker_node: manage Docker Swarm nodes
      • community.docker.docker_node_info: retrieve information on Docker Swarm nodes
      • community.docker.docker_secret: manage secrets
      • community.docker.docker_swarm: manage Docker Swarm
      • community.docker.docker_swarm_info: retrieve information on Docker Swarm
      • community.docker.docker_swarm_service: manage Docker Swarm services
      • community.docker.docker_swarm_service_info: retrieve information on Docker Swarm services
    • Docker Stack:
      • community.docker.docker_stack: manage Docker Stacks
      • community.docker.docker_stack_info: retrieve information on Docker Stacks
      • community.docker.docker_stack_task_info: retrieve information on tasks in Docker Stacks
    • Other:
      • current_container_facts: return facts about whether the module runs in a Docker container

Using this collection

Before using the General community collection, you need to install the collection with the ansible-galaxy CLI:

ansible-galaxy collection install community.docker

You can also include it in a requirements.yml file and install it via ansible-galaxy collection install -r requirements.yml using the format:

collections:
- name: community.docker

See Ansible Using collections for more details.

Contributing to this collection

If you want to develop new content for this collection or improve what is already here, the easiest way to work on the collection is to clone it into one of the configured COLLECTIONS_PATH, and work on it there.

You can find more information in the developer guide for collections, and in the Ansible Community Guide.

Release notes

See the changelog.

More information

Licensing

GNU General Public License v3.0 or later.

See COPYING to see the full text.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].