Невозможно запустить docker compose в сборнике игр. - PullRequest
0 голосов
/ 03 мая 2018

Мне кажется, что я не могу запускать docker, сочинять задачи в ANSIBLE playbook. Я застреваю в петле.

Первая ошибка, которую я получаю при запуске sudo ansible-playbook playbook.yml, следующая

fatal: [10.0.3.5]: FAILED! => {"changed": false, "msg": "Unable to load docker-compose. Try `pip install docker-compose`. Error: No module named compose"}

поэтому я удалился к этой машине и сделал sudo pip install docker-compose и снова попытался запустить playbook. На этот раз я получаю ...

fatal: [10.0.3.5]: FAILED! => {"changed": false, "msg": "Cannot have both the docker-py and docker python modules installed together as they use the same namespace and cause a corrupt installation. Please uninstall both packages, and re-install only the docker-py or docker python module"}

, поэтому я пытаюсь удалить Docker Python ...

  • sudo uninstall docker python

Тогда я получаю следующее при попытке снова запустить playbook

fatal: [10.0.3.5]: FAILED! => {"changed": false, "msg": "Failed to import docker-py - No module named docker. Try `pip install docker-py`"}

Однако это уже установлено на компьютере, так как при запуске sudo pip install docker-py я вижу следующее ...

Requirement already satisfied (use --upgrade to upgrade): docker-py in /usr/local/lib/python2.7/dist-packages
Cleaning up...

Кто-нибудь знает, как выйти из этого цикла и успешно получить сборник игр, который использует docker-compose для запуска?

ОС - это linux 14.04

Спасибо

Ответы [ 2 ]

0 голосов
/ 22 ноября 2018

У меня только что было такое же сообщение об ошибке при попытке запустить sudo ansible playbook-with-docker.yaml

{"changed": false, "msg": "Unable to load docker-compose. Try `pip install docker-compose`. Error: No module named compose"}

Мне потребовалось около 2 часов, чтобы понять, что в Linux pip install - это не то же самое, что sudo pip install (вполне очевидно, если вы знаете, что происходит).

Так что в случае, если у кого-то есть такая же проблема - убедитесь, что вы все выполняете последовательно либо как sudo, либо как sudo, но не смешивайте вещи:)

... и используйте sudo pip list | grep docker для подтверждения.

0 голосов
/ 23 мая 2018

Для меня сработало сначала удалить все докер, связанный в virtualenv для Ansible.

pip uninstall docker docker-py docker-compose

А затем установите модуль docker-compose, который установит модуль docker и зависимость.

pip install docker-compose

Модуль Ansible docker попытается import docker, что также будет успешно с модулем docker, и поэтому не выдаст ошибку с вводящей в заблуждение инструкцией по установке docker-py.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...