Ansible Core with additions.
Note! This image is called ansible-core
but installs ansible-base
for v2.10 (EOL). For later versions, v2.11 and onwards the ansible-core
package is installed.
If you find bugs or got improvements of the container, feel free to submit it here.
This repos stop supporting versions as it gets EOL according to Ansible - Releases and maintenance.
v2.18-almalinux
v2.18-alpine
v2.18-ubuntu
v2.17-almalinux
v2.17-alpine
v2.17-ubuntu
v2.16-almalinux
v2.16-alpine
v2.16-ubuntu
v2.18
,latest-alpine
,latest
v2.18-alpine
v2.17
v2.17-alpine
v2.16
v2.16-alpine
latest-almalinux
v2.18-almalinux
latest-ubuntu
v2.18-ubuntu
Container will run as user ansible-10000
by default. However, when you build your own image based on this root
will be set and you need to set it back yourself to ansible-10000
if you want.
ansible-1000
- uid=1000
- gid=1000
ansible-1001
- uid=1001
- gid=1001
ansible-10000
- uid=10000
- gid=10000
Note! All ansible users will have sudo rights. This is for convenience since some roles etc are not that well implemented.
- docker-cli
- git
- openssh
- sudo
- gosu
Below assume a playbook.yml
file is located in current directory:
# docker run --rm -v ${PWD}:/mnt haxorof/ansible-core
To override the default command set you can just add your own arguments after the images name:
# docker run --rm -v ${PWD}:/mnt haxorof/ansible-core ansible -m setup -c local localhost
Start a Python container in a terminal:
# docker run -it --rm --name=target python sh
In a second terminal run the following which will do an Ansible ping to that Python container:
# docker run --rm -v /var/run/docker.sock:/var/run/docker.sock haxorof/ansible-core sh -c "echo 'target ansible_connection=docker' > hosts && ansible -m ping -i hosts all"