mirror of https://github.com/easzlab/kubeasz.git
71 lines
2.1 KiB
YAML
71 lines
2.1 KiB
YAML
- name: 获取是否已经安装docker
|
|
shell: 'systemctl is-active docker || echo "NoFound"'
|
|
register: docker_svc
|
|
|
|
- name: 获取docker版本信息
|
|
shell: "{{ base_dir }}/bin/docker-bin/dockerd --version|cut -d' ' -f3"
|
|
register: docker_ver
|
|
connection: local
|
|
run_once: true
|
|
tags: upgrade_docker, download_docker
|
|
|
|
- name: debug info
|
|
debug: var="docker_ver"
|
|
connection: local
|
|
run_once: true
|
|
tags: upgrade_docker, download_docker
|
|
|
|
- name: 转换docker版本信息为浮点数
|
|
set_fact:
|
|
DOCKER_VER: "{{ docker_ver.stdout.split('.')[0]|int + docker_ver.stdout.split('.')[1]|int/100 }}"
|
|
connection: local
|
|
run_once: true
|
|
tags: upgrade_docker, download_docker
|
|
|
|
- name: 已安装提示
|
|
debug:
|
|
msg: "docker 服务已安装"
|
|
when: "'NoFound' not in docker_svc.stdout"
|
|
|
|
- block:
|
|
- name: 准备docker相关目录
|
|
file: name={{ item }} state=directory
|
|
with_items:
|
|
- "{{ bin_dir }}"
|
|
- "/etc/docker"
|
|
|
|
- name: 下载 docker 二进制文件
|
|
copy: src={{ item }} dest={{ bin_dir }}/ mode=0755
|
|
with_fileglob:
|
|
- "{{ base_dir }}/bin/docker-bin/*"
|
|
tags: upgrade_docker, download_docker
|
|
|
|
- name: 配置docker daemon
|
|
template: src=daemon.json.j2 dest=/etc/docker/daemon.json
|
|
|
|
- name: 创建docker的systemd unit文件
|
|
template: src=docker.service.j2 dest=/etc/systemd/system/docker.service
|
|
tags: upgrade_docker, download_docker
|
|
|
|
- name: 开机启用docker 服务
|
|
shell: systemctl enable docker
|
|
ignore_errors: true
|
|
|
|
- name: 开启docker 服务
|
|
shell: systemctl daemon-reload && systemctl restart docker
|
|
tags: upgrade_docker
|
|
|
|
- name: 轮询等待docker服务运行
|
|
shell: "systemctl is-active docker.service"
|
|
register: docker_status
|
|
until: '"active" in docker_status.stdout'
|
|
retries: 8
|
|
delay: 2
|
|
tags: upgrade_docker
|
|
|
|
# 配置 docker 命令软链接,方便单独安装 docker
|
|
- name: 配置 docker 命令软链接
|
|
file: src={{ bin_dir }}/docker dest=/usr/bin/docker state=link
|
|
ignore_errors: true
|
|
when: "'NoFound' in docker_svc.stdout"
|