2017-02-04 3 views
0

Я работаю над незаменимым скриптом для запускает docker damon, докер-контейнер, docker exec После запуска контейнера докера с контейнером докера мне нужно запустить некоторые сервисы.docker daemon start using ansible

Я установил двигатель докера, сконфигурированный и работающий с некоторым контейнером докера в удаленных машинах. я использовал для запуска демона докеров с определенным путем, потому что мне нужно хранить мои тома и контейнеры в пути.

$docker daemon -g /test/docker 

Мой вопрос при запуске демона Docker его начала, но не перейти к следующему процессу. через доступный. все еще работает демон докеров.

--- 
    - hosts: webservers 
    remote_user: root 

    # Apache Subversion dnf -y install python-pip 

    tasks: 

     - name: Start Docker Deamon 
     shell: docker -d -g /test/docker 
     become: yes 
     become_user: root 

     - name: Start testing docker machine 
     command: docker start testing 
     async: True 
     poll: 0 

Я следую асинхр начать process, но он не работает для меня,

Предлагайте меня После запуска Docker демона Как запустить следующий процесс.

ответ

2

Для того, чтобы начать Docker демона вы должны использовать анзибль service module:

- name: Ensure docker deamon is running 
    service: 
    name: docker 
    state: started 
    become: true 

любой демон настройки докер должен быть помещен в /etc/docker/daemon.json, как описано в official documentation. в вашем случае файл будет выглядеть следующим образом:

{ 
    "graph": "/test/docker" 
} 

Для того, чтобы взаимодействовать с контейнерами, используйте анзибль docker_container module:

- name: Ensure My docker container is running 
    docker_container: 
    name: testing 
    image: busybox 
    state: started 
    become: true 

Старайтесь избегать делать что-либо в анзибль с помощью модуля оболочки, так как он может вызывают головные боли по линии.