Próbuję udostępnić moją infrastrukturę na AWS za pomocą książeczek Ansible. Mam instancję i jestem w stanie zapewnić silnik dokowania, docker-py itp. I, przysięgam, wczoraj działało to poprawnie i od tego czasu nie zmieniłem kodu.Answer docker_container 'no Host w adresie URL żądania', funkcja pull dock działa poprawnie
Odpowiednia część mojego poradnika jest:
- name: Ensure AWS CLI is available
pip:
name: awscli
state: present
when: aws_deploy
- block:
- name: Add .boto file with AWS credentials.
copy:
content: "{{ boto_file }}"
dest: ~/.boto
when: aws_deploy
- name: Log in to docker registry.
shell: "$(aws ecr get-login --region us-east-1)"
when: aws_deploy
- name: Remove .boto file with AWS credentials.
file:
path: ~/.boto
state: absent
when: aws_deploy
- name: Create docker network
docker_network:
name: my-net
- name: Start Container
docker_container:
name: example
image: "{{ docker_registry }}/example"
pull: true
restart: true
network_mode: host
volumes:
- /etc/localtime:/etc/localtime:ro
- /etc/timezone:/etc/timezone
My {{ docker_registry }}
jest ustawiony na my-acct-id.dkr.ecr.us-east-1.amazonaws.com
a wynik dostaję to:
"msg": "Error pulling my-acct-id.dkr.ecr.us-east-1.amazonaws.com/example - code: None message: Get http://: http: no Host in request URL"
Jednak, jak wspomniano, ten ostatni pracował poprawnie noc. Od tego czasu dokonałem pewnych zmian VPC/podsieci, ale mogę ssh do instancji i uruchomić docker pull my-acct-id.dkr.ecr.us-east-1.amazonaws.com/example
bez żadnych problemów.
Googling doprowadził mnie nie tak daleko, ponieważ nie mogę znaleźć innych ludzi z tym samym błędem. Zastanawiam się, co się zmieniło i jak mogę to naprawić! Dzięki!
EDIT: Wersje:
- ansibl - 2.2.0.0
- doker - 1.12.3 6b644ec
- Döcker-Py - 1.10.6
Mając dokładnie ten sam problem. Dziś rano pracował dla mnie i nic nie zmieniłem. Otworzyłem błąd: https://github.com/ansible/ansible-modules-core/issues/5775 –
Widzę to również podczas uzyskiwania dostępu do prywatnych i publicznych rejestrów Docker. To na pewno drapak głowy. – user1836542