ansible roles 를 사용 하여 docker 와 docker-compose 를 설치 합 니 다.

2270 단어 ansible
1)디렉토리 만 들 기
cd /etc/ansible/
mkdir roles/install_docker/{tasks,handlers,vars} -pv
mkdir roles/install_compose/{tasks,handlers,vars} -pv

2)docker 설치 작업 파일
# cat roles/install_docker/tasks/main.yml 
- name: install depend
  yum:  name={{ item }} state=present
  with_items:
    - yum-utils  
    - device-mapper-persistent-data 
    - lvm2

- name: install ali epel
  shell: yum-config-manager  --add-repo  https://download.docker.com/linux/centos/docker-ce.repo
- name: install docker 
  yum: name=docker-ce state=present
- name: start docker 
  service: name=docker state=started enabled=true

- name: copy file 
  template: src=daemon.json dest=/etc/docker/daemon.json
  tags: conf 
  notify: 
  - restart docker 

3)설정 파일 이 업 데 이 트 될 때 서비스 재 부팅 파일
# cat roles/install_docker/handlers/main.yml 
- name: restart docker
  service: name=docker state=restarted enabled=true

4)템 플 릿 파일
# cat roles/install_docker/templates/daemon.json 
{
   "registry-mirrors": ["https://ui5lsypg.mirror.aliyuncs.com"]
}

5)docker-compose 를 설치 한 작업 파일
# cat roles/install_compose/tasks/main.yml 
- name: install com
  shell: sudo curl -L https://mirrors.aliyun.com/docker-toolbox/linux/compose/1.17.0/docker-compose-Linux-x86_64 > /usr/local/bin/docker-compose
- name: sudo chmod +x /usr/local/bin/docker-compose
  shell: sudo chmod +x /usr/local/bin/docker-compose

6)주 입구 파일
# cat site.yml 
--- 
- hosts: "{{ host }}"
  gather_facts: false
  remote_user: root
  roles:
    - { role: install_compose, tags: "compose"}
    - install_docker

7)실행
 ansible-playbook site.yml -e host=192.168.0.194 --syntax-check  #    
 ansible-playbook site.yml -e host=192.168.1.194     
  : 
 roles:
    - { role: install_compose, tags: "compose"}
    - install_docker

 ansible-playbook site.yml -e host=192.168.1.194            , install_compose  install_docker 
 ansible-playbook site.yml -e host=192.168.1.194 --tags="compose"  ,     compose  ,      install_docker   

참고 문서:https://www.cnblogs.com/lxmhhy/p/6811373.html

좋은 웹페이지 즐겨찾기