Ubuntu 16.04下使用Ansible Docker角色时遇错误求助
问题分析与修复方案
我看到你在Ubuntu 16.04上使用Ansible部署Docker角色时遇到了问题,先从你贴出的这段代码里找几个关键问题:
1. 语法错误:未闭合的字符串与不完整的keyserver地址
第二个任务Get upstream APT GPG key里的keyserver参数存在明显语法问题:
- 整个条件表达式的结尾没有闭合双引号
hkp:...是不完整的keyserver地址,Ansible无法识别
2. 修正后的代码
我帮你把这段代码修复成可正常运行的版本,同时补全了官方推荐的keyserver地址:
- name: Install Docker and role dependencies apt: name: "{{ item }}" state: "present" install_recommends: False with_items: - "apt-transport-https" - "ca-certificates" - "software-properties-common" - "cron" - name: Get upstream APT GPG key apt_key: id: "{{ docker_apt_key }}" keyserver: "{{ ansible_local.core.keyserver if (ansible_local|d() and ansible_local.core|d() and ansible_local.core.keyserver) else 'hkp://keyserver.ubuntu.com:80' }}"
额外注意事项
- 确保
docker_apt_key变量已正确定义,Docker CE针对Ubuntu的官方GPG Key ID是9DC858229FC7DD38854AE2D88D81803C0EBFCD88 - Ubuntu 16.04已经结束了官方支持,后续Docker版本不再兼容该系统,如果可能的话,建议升级到Ubuntu 20.04或更高版本以获得安全更新和更好的兼容性
内容的提问来源于stack exchange,提问作者kaoeuch Seifeddine
相关产品推荐
相关产品推荐

