Как настроить Ansible / Molecule для подключения к TLS Docker (DIND) - в настоящее время появляется ошибка - PullRequest
0 голосов
/ 04 июня 2019

Вот немного фона.Я использую изображение докера молекулы (quay.io/ansible/molecule:latest) для выполнения тестов в моей книге игр;но я говорю докеру в контейнере молекулы подключиться к демону докера, который работает вне контейнера, используя TLS и определенный путь сертификата, установив следующие переменные env.

export DOCKER_HOST=tcp://dind:2376 DOCKER_TLS_VERIFY=1 DOCKER_CERT_PATH=/root/.docker

Я получаюследующая ошибка при попытке запустить molecule --debug test.Судя по всему, Molecule или Ansible пытается запросить / версию у демона Docker (который находится на хосте 'dind').Проблема в том, что он использует localhost (или, по крайней мере, это то, о чем я думаю) при отправке запроса, но сертификат настроен для dind, что делает его неудачным.Можно ли это изменить где-нибудь в конфигурации Ansible или Molecule, чтобы я мог установить для нее значение dind: 2376 вместо localhost: 2376 при выполнении запросов к API?

"msg": "Ошибка подключения: ошибка при загрузке версии API сервера: HTTPSConnectionPool (host = 'dind', port = 2376): превышено максимальное количество попыток с помощью url: / version (вызвано SSLError (SSLCertVerificationError (\ "hostname 'localhost' не соответствует ни одному из'dind', '127.0.0.1' \ ")))",

Возможно, я здесь совершенно не прав, поэтому, если у кого-то есть какие-либо идеи, пожалуйста, не стесняйтесь поделиться.

...