Как запустить команду «Доккер командной строки» от Ansible? [Дубликат]

Для меня такая же проблема возникла из-за неправильной настройки в моем файле app.config. Я изменил настройку, и проблема была решена

5
задан techraf 29 December 2016 в 13:26
поделиться

1 ответ

Относительно ошибки «no such file»:

source - это внутренняя команда оболочки (см., например, Bash Builtin Commands ), а не внешнюю программу, которую вы можете запустить. В вашей системе нет исполняемого файла с именем source, поэтому вы получаете ошибку No such file or directory.

Вместо модуля command используйте shell , который будет выполнять source внутри оболочки.


Что касается проблемы с источником:

В цикле with_items Ansible будет запускать оболочку дважды, и оба процесса будут независимы от каждого Другие. Переменные, установленные в одном, не будут отображаться другим.

Вы должны запустить две команды в одном процессе оболочки, например, с помощью:

- name: Install node {{ nvm.node_version }}
  shell: "source /home/centos/.nvm/nvm.sh && nvm install {{ nvm.node_version }}"
  tags: nvm

Другие замечания:

Используйте {{ ansible_env.HOME }} вместо ~ в задаче git. Любой из них будет работать здесь, но расширение тильды - это функциональность оболочки, и вы пишете код для Ansible.

9
ответ дан techraf 15 August 2018 в 15:50
поделиться
  • 1
    не удалось запустить команду «источник / etc / environment», используя также модуль оболочки. – Python Enthusiast 17 July 2018 в 12:17
Другие вопросы по тегам:

Похожие вопросы: