Я использую Ansible playbook для управления установкой контейнеров Docker. У меня есть следующий плей-лист, который устанавливает Cassandra:Проблемы с доступом к работе с Boot2Docker
Я хочу запустить эту игрушку локально и установить ее в Boot2Docker. Я могу SSH в Boot2Docker, используя инструкции из this answer:
$ ssh -i $HOME/.ssh/id_boot2docker -p 2022 [email protected]
## .
## ## ## ==
## ## ## ## ===
/""""""""""""""""\___/ ===
~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~/===- ~~~
\______ o __/
\ \ __/
\____\______/
_ _ ____ _ _
| |__ ___ ___ | |_|___ \ __| | ___ ___| | _____ _ __
| '_ \/_ \/_ \| __| __)/_` |/ _ \/__| |//_ \ '__|
| |_) | (_) | (_) | |_/__/ (_| | (_) | (__| < __/ |
|_.__/ \___/ \___/ \__|_____\__,_|\___/ \___|_|\_\___|_|
Boot2Docker version 1.4.1, build master : 86f7ec8 - Tue Dec 16 23:11:29 UTC 2014
Docker version 1.4.1, build 5bc2ff8
[email protected]:~$
Я сделал файл инвентаризации с теми же настройками SSH:
[local]
localhost ansible_ssh_port=2022 ansible_ssh_user=docker ansible_ssh_private_key_file=~/.ssh/id_boot2docker
Но когда я бегу пьес, он терпит неудачу с ошибкой «/bin/sh: /usr/bin/python: not found
»:
$ ansible-playbook db-setup.yml -i hosts.local
PLAY [local] ******************************************************************
GATHERING FACTS ***************************************************************
failed: [localhost] => {"failed": true, "parsed": false}
/bin/sh: /usr/bin/python: not found
OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: /etc/ssh_config line 102: Applying options for *
debug1: auto-mux: Trying existing master
debug1: mux_client_request_session: master session id: 2
Shared connection to localhost closed.
TASK: [Database] **************************************************************
FATAL: no hosts matched or all hosts have already failed -- aborting
PLAY RECAP ********************************************************************
to retry, use: --limit @/Users/bryan/db-setup.retry
localhost : ok=0 changed=0 unreachable=0 failed=1
я все еще получаю ошибку, даже если „собрать факты“ выключен. Если я SSH в Boot2Docker, я могу видеть, что существует /usr/bin/python
:
$ ssh -i $HOME/.ssh/id_boot2docker -p 2022 [email protected]
...
[email protected]:~$ which python