shelleg.ansible_role_portainer
ansible-role-portainer
======================= Portainer - a great user interface for Docker http://portainer.io/
This role sets up Portainer using a Docker container.
Tasks in Role
- Make sure
docker-py
is installed using pip. - Remove the existing Portainer container if
remove_existing_container
is set to true. - Clean up persistent data if
remove_persistent_data
is set to true. - Deploy the Portainer container on the host and specify where to store persistent data.
- Set the Admin user password.
- Create an authentication token.
- Define the endpoints (as a dictionary or list).
- Adjust Portainer settings using a Jinja2 template.
- Set up the Docker registry using a Jinja2 template.
Requirements
curl
docker
(Service and Python package)
Role Variables
Name | Description | Default |
---|---|---|
configure_settings | Customize default Portainer settings with a template | false |
configure_registry | Set up a Docker registry for Portainer | false |
remove_persistent_data | Delete persistent data directory on the host | false |
remove_existing_container | Remove an existing container named 'portainer' | false |
persistent_data_path | Path to store persistent data | /opt/portainer:/data |
auth_method | Use LDAP (2) or standalone (1) | 1 |
registry_type | 1 (Quay.io), 2 (Azure container registry), 3 (custom registry) | 3 |
version | Portainer version to use | latest (supports LDAP during commit) |
For a complete list, see main.yml under 'defaults' |
Running the Role
ansible-playbook -i myinventory ./playbooks/deploy-portainer.yml
Playbook Example
---
- hosts: myhosts
become: true
vars:
pip_install_packages:
- name: docker
vars_files:
- vars/portainer.yml
roles:
- geerlingguy.docker
- geerlingguy.pip
- portainer
Installa
ansible-galaxy install shelleg.ansible_role_portainer
Licenza
mit
Download
205.8k
Proprietario