У меня проблема с необходимостью использования docker compose в python (для использования функции docker_service в Ansible), но его невозможно установить с помощью pip из-за сетевой политики компании (виртуальная машина не имеет доступа только к сетидоступ к RPM).Хотя я могу использовать репозиторий yum, который содержит docker compose.
Я пытался установить «docker compose» (версия 1.18.0), используя yum.Хотя python не распознает docker compose и предлагает мне использовать pip: «Невозможно загрузить docker-compose. Попробуйте pip install docker-compose
Поскольку в большинстве случаев я могу решить эту проблему, установив ее с помощью yum install python-,Я уже искал в интернете пакет python-docker-compose, но безрезультатно: (
минималистичный ответный скрипт для теста:
- name: Run using a project directory
hosts: localhost
gather_facts: no
tasks:
- docker_service:
project_src: flask
state: absent
надеюсь, что кто-нибудь может помочь.
РЕШЕНИЕ:
После некоторых копаний я решил проблему, выполнив локальную загрузку на машине с Интернетом:
pip download -d / tmp/ docker-compose-local docker-compose
архивирование всех пакетов, которые были загружены в папку
cd tmp tar -czvf docker-compose-python.tgz./ docker-compose-local
, поскольку общий размер пакета немного превышает 1 МБ. Я добавил файл в роль ответственного за докер.
В роли docker локальная установкасделано:
cd / tmp tar -xzvf docker-compose-python.tgz pip install --no-index - файл find-links: / tmp / docker-compose-local / docker_compose