2016-11-30 11 views
5

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
+1

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 –

+0

Widzę to również podczas uzyskiwania dostępu do prywatnych i publicznych rejestrów Docker. To na pewno drapak głowy. – user1836542

Odpowiedz

3

miałem ten sam problem. Obniżenie poziomu obrazu w oknie dokowania dla tego komputera-hosta z wersji 1.9.0 na 1.8.1 rozwiązało problem.

- name: Install docker-compose 
    pip: name=docker-compose version=1.8.1 

Per tym wątku: https://github.com/ansible/ansible-modules-core/issues/5775, prawdziwym winowajcą jest prośby. To naprawia:

- name: fix requests 
    pip: name=requests version=2.12.1 state=forcereinstall 
+0

To zadziałało dla mnie. Dziwne, wygląda na to, że 1.9.0 zostało wydane kilka tygodni temu. –

+0

To działało również dla mnie, chociaż uważam, że jest tu duży problem, którego nam brakuje i doradziłbym, aby mieć oko na problem GaveHub davey_dev powiązany z powyższym. –

Powiązane problemy