No description
Find a file
holzi1005 f68f64e10a
All checks were successful
docker-build / release (push) Successful in 7s
docker-build / docker-build (push) Successful in 3m13s
(MAJOR) Update Readme
2025-11-05 13:39:49 +01:00
.forgejo/workflows Update .forgejo/workflows/build.yml 2025-09-02 15:13:00 +02:00
docker-entrypoint.sh Update docker-entrypoint.sh 2025-06-23 15:32:56 +02:00
Dockerfile Update Dockerfile 2025-07-27 14:15:06 +02:00
README.md (MAJOR) Update Readme 2025-11-05 13:39:49 +01:00
requirements.txt Update requirements.txt 2025-06-23 16:21:31 +02:00

Ansible Runner Docker Image

This project builds a docker image with all of the dependencies required to run ansible-playbook and ansible-lint. The as-configured version of this image also contains all of the python and ansible-galaxy dependencies necessary to run Arista AVD plays.

Image Details

Environment Variables

Environment Variable Default Description
PUID 1000 User ID of the primary ansible user
PGID 1000 Group ID for the primary ansible group

Users

User Description
ansible This is the default user, for use by ansible. This user enables SSH from inside of a container, when used with a SSH bind mount (see "Mounts", below).

Mounts

Mount Description
/app The expected mount path for an ansible project
/home/ansible/.ssh The default ansible user's SSH Directory. Private keys can be mounted inside of this directory for use by ansible-playbook during runs.

Usage

This image can be used by any ansible project. If SSH is required, be sure to mount the ~/.ssh so the local user's keys are available.

docker run \
    --rm -it \
    --pull always \
    --network host \
    -e PUID=${id -u} \
    -e PGID=${id -g} \
    --mount type=bind,source=".",target=/app \
    --mount type=bind,source="${HOME}/.ssh",target=/home/ansible/.ssh,readonly \
    reg.h2-invent.com/public-system-design/ansible-runner:latest \
    ansible-playbook -e "ansible_ssh_user=${USER}" -i inventory.yml site.yml