
Ansible Docker 镜像旨在提供一致的 Ansible 运行环境,适用于本地机器或 CI/CD 系统。通过容器化 Ansible,可确保在不同环境中运行 Ansible 时的一致性,避免因依赖差异导致的问题。
查看 https://github.com/willhallonline/docker-ansible/blob/main/CHANGELOG.md 了解最新更新。
!Docker Pulls !Docker Image Size (tag)
linux/arm64(适用于 Macbook 和 AWS Graviton)及 linux/arm/v7/linux/arm/v6(适用于树莓派,实验性)。ansible-core、ansible、ansible-lint 等核心工具。容器中运行的最新 Ansible Core 版本如下:
旧版本(如 2.9、2.10、2.11、2.12)已归入未维护部分,仍可使用但不再更新。更多版本信息参见 Ansible 发布文档 和 Ansible-core 与 Python 兼容性。
提供多个不可变镜像,标签格式为 Ansible版本-基础操作系统版本。具体版本可在 https://hub.docker.com/r/willhallonline/ansible/tags 中查询。
包含以下组件:
ansible-core (<[***]>)ansible (<[***]>)ansible-lint (<[***]>)| 基础镜像 (↓) \ Ansible版本 (→) | Dockerfile | 2.13 | 2.14 | 2.15 | 2.16 | 2.17 | 2.18 |
|---|---|---|---|---|---|---|---|
| Latest | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/alpine318/Dockerfile | latest | |||||
| Alpine | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/alpine318/Dockerfile | alpine | |||||
| Ubuntu | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/ubuntu2204/Dockerfile | ubuntu | |||||
| Alpine 3.18 | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/alpine-3.18/Dockerfile | 2.13-alpine-3.18 | 2.14-alpine-3.18 | 2.15-alpine-3.18 | 2.16-alpine-3.18 | 2.17-alpine-3.18 | 2.18-alpine-3.18 |
| Alpine 3.19 | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/alpine-3.19/Dockerfile | 2.13-alpine-3.19 | 2.14-alpine-3.19 | 2.15-alpine-3.19 | 2.16-alpine-3.19 | 2.17-alpine-3.19 | 2.18-alpine-3.19 |
| Alpine 3.20 | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/alpine-3.20/Dockerfile | 2.16-alpine-3.20 | 2.17-alpine-3.20 | 2.18-alpine-3.20 | |||
| Alpine 3.21 | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/alpine-3.21/Dockerfile | 2.16-alpine-3.21 | 2.17-alpine-3.21 | 2.18-alpine-3.21 | |||
| Alpine 3.22 | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/alpine-3.22/Dockerfile | 2.16-alpine-3.22 | 2.17-alpine-3.22 | 2.18-alpine-3.22 | |||
| Bullseye (Debian 11) | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/debian-bullseye/Dockerfile | 2.14-debian-bullseye | 2.15-debian-bullseye | ||||
| Bullseye Slim (Debian 11) | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/debian-bullseye-slim/Dockerfile | 2.14-debian-bullseye-slim | 2.15-debian-bullseye-slim | ||||
| Bookworm (Debian 12) | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/debian-bookworm/Dockerfile | 2.14-debian-bookworm | 2.15-debian-bookworm | 2.16-debian-bookworm | 2.17-debian-bookworm | 2.18-debian-bookworm | |
| Bookworm Slim (Debian 12) | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/debian-bookworm-slim/Dockerfile | 2.14-debian-bookworm-slim | 2.15-debian-bookworm-slim | 2.16-debian-bookworm-slim | 2.17-debian-bookworm-slim | 2.18-debian-bookworm-slim | |
| Rocky Linux 9 | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/rocky9/Dockerfile | 2.13-rockylinux-9 | 2.14-rockylinux-9 | 2.15-rockylinux-9 | |||
| Ubuntu 20.04 | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/ubuntu-20.04/Dockerfile | 2.13-ubuntu-20.04 | |||||
| Ubuntu 22.04 | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/ubuntu-22.04/Dockerfile | 2.14-ubuntu-22.04 | 2.15-ubuntu-22.04 | 2.16-ubuntu-22.04 | 2.17-ubuntu-22.04 | ||
| Ubuntu 24.04 | https://github.com/willhallonline/docker-ansible/blob/main/ansible-core/ubuntu-24.04/Dockerfile | 2.15-ubuntu-24.04 | 2.16-ubuntu-24.04 | 2.17-ubuntu-24.04 | 2.18-ubuntu-24.04 |
linux/arm64(适用于 Macbook 和 AWS Graviton):支持 latest 和 alpine 标签。linux/arm/v7 和 linux/arm/v6(适用于树莓派):支持 arm 标签(实验性)。以下版本不再更新,但仍可用于遗留工作负载:
ansible-core + ansible,需 Python ≥3.8。ansible-core + ansible,需 Python 3。ansible-base。ansible。所有旧版本均包含 ansible-lint。具体标签及 Dockerfile 链接可参考 https://github.com/willhallonline/docker-ansible#older-releases%E3%80%82
所有镜像均预装 Mitogen 以提升剧本执行效率。使用前需配置 ansible.cfg,步骤如下:
查找 Mitogen 路径:在容器中执行以下命令获取 ansible_mitogen 插件路径:
bashyour_container="ansible:latest" # 替换为实际使用的镜像标签 docker run --rm -it "willhallonline/${your_container}" /bin/sh -c "find / -type d | grep 'ansible_mitogen/plugins' | sort | head -n 1"
配置 ansible.cfg:在本地 ansible.cfg 中添加以下内容(路径替换为上一步结果):
ini[defaults] strategy_plugins = /usr/local/lib/python3.x/site-packages/ansible_mitogen/plugins/ # 替换为实际路径 strategy = mitogen_linear
启动容器并进入交互式 shell:
bashdocker run --rm -it willhallonline/ansible:latest /bin/sh
--rm:退出后自动删除容器;-it:启用交互式终端。
挂载本地 Ansible 项目目录和 SSH 密钥,以执行远程操作:
bashdocker run --rm -it \ -v $(pwd):/ansible \ # 挂载当前目录到容器内 /ansible -v ~/.ssh/id_rsa:/root/.ssh/id_rsa # 挂载本地 SSH 私钥到容器 --workdir=/ansible \ # 设置工作目录为 /ansible willhallonline/ansible:latest /bin/sh
确保 SSH 密钥权限正确(容器内
/root/.ssh/id_rsa权限需为600)。
直接在容器中执行 Ansible 命令(如运行剧本):
bashdocker run --rm -it \ -v $(pwd):/ansible \ -v ~/.ssh/id_rsa:/root/.ssh/id_rsa \ --workdir=/ansible \ willhallonline/ansible:latest \ ansible-playbook -i inventory.yml playbook.yml # 替换为实际命令
为常用命令创建 Bash 别名(添加到 ~/.bashrc 或 ~/.zshrc):
bash# 交互式 shell 别名 alias docker-ansible-cli='docker run --rm -it \ -v $(pwd):/ansible \ -v ~/.ssh/id_rsa:/root/.ssh/id_rsa \ --workdir=/ansible \ willhallonline/ansible:latest /bin/sh' # 直接执行命令别名 alias docker-ansible='docker run --rm -it \ -v $(pwd):/ansible \ -v ~/.ssh/id_rsa:/root/.ssh/id_rsa \ --workdir=/ansible \ willhallonline/ansible:latest'
使用示例:
bash# 进入交互式 shell docker-ansible-cli # 直接运行剧本 docker-ansible ansible-playbook playbook.yml
由 Will Hall 开发和维护。
https://hub.docker.com/r/willhallonline/ansible
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务