我正在使用 docker-compose 在 Windows 10 机器上设置 Ansible AWX。运行安装手册时,ansible-playbook -i inventory install.yml
我收到以下错误。我可以看到登录屏幕,但无法使用默认凭据登录。我尝试更新我的 docker-compose 版本,但没有成功。有什么办法可以解决此错误吗?
我按照这个 github repo 中的步骤进行操作https://github.com/ansible/awx/blob/17.0.1/INSTALL.md
Docker-Compose 版本 = 1.29.2 Docker 版本 = 24.0.7 Ansible 版本 = core 2.15.6 Python 版本 = 3.10.12
TASK [local_docker : 在任务容器中运行迁移]
****************************************************************************************************************************************************致命:[localhost]:失败! => {“changed”: true, “cmd”: “docker-compose run --rm --service-ports task awx-manage migration --no-input”, “delta”: “0:00:00.373472”, “end”: “2023-12-19 10:55:04.590566”, “msg”: “非零返回码”, “rc”: 1, “start”: “2023-12-19 10:55:04.217094”, “stderr”: “回溯(最近一次调用最后一次):\n 文件“/home/jvieyra/.local/bin/docker-compose”, 第 8 行, 在 \n sys.exit(main())`n 文件“/home/jvieyra/.local/lib/python3.10/site-packages/compose/cli/main.py”, 第 81 行, 在 main\n command_func()\n 文件“/home/jvieyra/.local/lib/python3.10/site-packages/compose/cli/main.py”, 第 200 行, 在 perform_command\n project = project_from_options('.', options)\n 文件“/home/jvieyra/.local/lib/python3.10/site-packages/compose/cli/command.py”, 第 60 行, 在 project_from_options\n return get_project(\n 文件“/home/jvieyra/.local/lib/python3.10/site-packages/compose/cli/command.py”, 第 152 行, 在 get_project\n client = get_client(\n 文件“/home/jvieyra/.local/lib/python3.10/site-packages/compose/cli/docker_client.py”, 第 41 行, 在 get_client\n client = docker_client(\n 文件“/home/jvieyra/.local/lib/python3.10/site-packages/compose/cli/docker_client.py”, 第 124 行, 在 docker_client\n kwargs = kwargs_from_env(environment=environment, ssl_version=tls_version)\nTypeError: kwargs_from_env() 获得了意外的关键字参数 'ssl_version'”, “stderr_lines”: [“Traceback (最近一次调用最后一次):”, “文件“/home/jvieyra/.local/bin/docker-compose”, 第 8 行, 在“, “
sys.exit(main())”, “文件“/home/jvieyra/.local/lib/python3.10/site-packages/compose/cli/main.py”, 第 81 行, 在 main”, “command_func()”, “文件“/home/jvieyra/.local/lib/python3.10/site-packages/compose/cli/main.py”, 第 200 行, 在 perform_command 中”, “ project = project_from_options('.', options)”, “ 文件”/home/jvieyra/.local/lib/python3.10/site-packages/compose/cli/command.py”, 第 60 行, 在 project_from_options 中”, “ return get_project(”, “ 文件”/home/jvieyra/.local/lib/python3.10/site-packages/compose/cli/command.py”, 第 152 行, 在 get_project 中”, “ client = get_client(”, “ 文件”/home/jvieyra/.local/lib/python3.10/site-packages/compose/cli/docker_client.py”, 第 41 行, 在 get_client 中”, “ client = docker_client(”, “ 文件“/home/jvieyra/.local/lib/python3.10/site-packages/compose/cli/docker_client.py”,第 124 行,位于 docker_client 中”,“ kwargs = kwargs_from_env(environment=environment,ssl_version=tls_version)”,“TypeError:kwargs_from_env()得到了一个意外的关键字参数‘ssl_version’”],“stdout”:“”,“stdout_lines”:[]}`
库存文件
localhost ansible_connection=local
ansible_python_interpreter="/usr/bin/python3"
[all:vars]
dockerhub_base=ansible
awx_task_hostname=awx
awx_web_hostname=awxweb
# Local directory that is mounted in the awx_postgres docker container to place the db in
postgres_data_dir="~/.awx/pgdocker"
host_port=80
host_port_ssl=443
docker_compose_dir="~/.awx/awxcompose"
pg_username=awx
pg_password=awxpass
pg_database=awx
pg_port=5432
admin_user=admin
admin_password=password
# Whether or not to create preload data for demonstration purposes
create_preload_data=True
secret_key=awxsecret
# Proxy
http_proxy=http://proxy:3128
https_proxy=http://proxy:3128
#no_proxy=mycorp.org
# AWX custom virtual environment folder. Only usable for local install.
custom_venv_dir=/opt/my-envs/
ca_trust_dir=/etc/pki/ca-trust/source/anchors
答案1
最新版本的 Docker (7.0) 中有一个错误导致此问题。解决方法是在安装 Ansible AWX 时在 Python pip 环境中使用稍旧版本的 Docker:
pip uninstall docker
pip install docker==6.1.3
GH 就此问题发表的帖子: