ansible playbook 简单例子

- hosts: "{{ hosts }}"
  remote_user: root
  gather_facts: false
  serial: "100%"
  tasks:
  - name: mkdir file dir
    shell: mkdir -p /data/service/docker-composefile

  - name: sync docker-compose file
    synchronize:
      src: /data/service/docker-composefile/{{hosts}}.yml
      dest: /data/service/docker-composefile
      
  - name: update docker-compose template file
    replace:
      path: /data/service/docker-composefile/{{hosts}}.yml
      regexp: "{{item.regexp1}}"
      replace: "{{item.replace}}"
    with_items:
      - {regexp1: "tags", replace: "{{tags}}"}
      - {regexp1: "servicename", replace: "{{servicename}}"}
      - {regexp1: "serviceport", replace: "{{serviceport}}"}
      - {regexp1: "eureka_ip", replace: "{{ansible_host}}"}

  - name: run docker-compose
    shell: docker-compose -f /data/service/docker-composefile/{{hosts}}.yml up -d

  - name: copy send script to delploy ecs
    synchronize:
      src: /data/script/check_service.py
      dest: /data/script/

  - name: send wechat msg to ops
    shell: python3 /data/script/check_service.py {{ansible_host}} {{serviceport}} {{hosts}}

  - name: get local images id
    shell: docker images| grep {{hosts}}| grep -v {{tags}} | awk '{print $3}'
    register: imid
    - debug: var=imid.stdout

  - name: delete local images id
    shell: docker rmi {{imid.stdout}}
    when: 'not "{{imid.stdout}}" == ""'
    - debug: msg="docker rmi {{imid.stdout}}---!"
posted @ 2021-11-19 10:26  蒲公英PGY  阅读(82)  评论(0编辑  收藏  举报