如果之前都ok,接下来要copy档案到大家都在用的 docker了
docker部份
步骤1:
我使用 docker desktop ,打开终端机执行以下:
docker run --name server1 -d -P chusiang/ansible-managed-node:ubuntu-14.04##使用者帐户# | | username | password |# |-----------|----------|----------|# | root user | root | root |# | sudo user | docker | docker |
参考怎么用 Docker 练习 Ansible
(写的很好)
步骤2:
通常大家都会使用 portainer 如下:
注意以下的 port:49153 及 name:server1
ansible部份
资产清单 inventory.ini 加入以下:
[web7] #dockerserver1 ansible_ssh_host=192.168.0.64 ansible_ssh_port=49153 ansible_ssh_pass=docker
ansible-paybook修改 hosts: web7 , ansible_become_pass: docker 其它与上一章相同
- hosts: web7 name: play-test gather_facts: no become: yes vars: ansible_become: yes ansible_become_method: sudo ansible_become_pass: docker tasks: - name: Create a directory if it does not exist file: path: /etc/test state: directory - name: copy files from local to remote copy: src: files/test.txt dest: /etc/test/test.txt
执行以下,会出ok画面如下:
joulong@joulong1:~/playbook/docker$ ansible-playbook -i inventory.ini playbook6.ymlPLAY [play-test] *********************************************************************************************************************************************************************************************TASK [Create a directory if it does not exist] ***************************************************************************************************************************************************************changed: [server1]TASK [copy files from local to remote] ***********************************************************************************************************************************************************************changed: [server1]PLAY RECAP ***************************************************************************************************************************************************************************************************server1 : ok=2 changed=2 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
再到portainer看是否有 copy 过来如下: