Вы не получите Ansible для запуска задач внутри контейнера на удаленном хосте. Можно попробовать несколько способов:
Docker переадресация сокетов
Вместо того, чтобы публично выставлять сокет Docker, перенаправьте его через соединение sh. Например:
ssh -L /tmp/docker.sock:/var/run/docker.sock remotehost
Пока это соединение активно, вы можете получить доступ к удаленному docker через локальный сокет /tmp/docker.sock
, например, установив DOCKER_HOST=unix:///tmp/docker.sock
в вашей среде.
Это означает, что вы можете использовать Ansible docker
драйвер подключения для запуска задач внутри удаленного контейнера.
Просто запустите команды на удаленном хосте
Если у вас есть Postgres При запуске внутри контейнера на удаленном хосте вам не нужно запускать задачи внутри контейнера, чтобы общаться с Postgres. При соответствующей аутентификации вы можете напрямую подключиться к postgres по IP-адресу контейнера или к порту, опубликованному на хосте.
В любом случае вы будете использовать обычное Ansible соединение *1032* водитель.