十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章给大家分享的是有关如何实现一键自动安装Docker的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
成都创新互联专业为企业提供镇原网站建设、镇原做网站、镇原网站设计、镇原网站制作等企业网站建设、网页设计与制作、镇原企业网站模板建站服务,十多年镇原做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
准备自动化创建VM的脚本
cd ~/devenv_bootstrap/
git clone git@github.com:dhyuan/virt-infra-ansible.git
cd ~/devenv_bootstrap/virt-infra-ansible/roles
git clone https://github.com/dhyuan/ansible-role-virt-infra.git
cd ansible-role-virt-infra
git checkout -b devenv
git branch --set-upstream-to origin/devenv
git pull
vi ~/devenv_bootstrap/virt-infra-ansible/k8s_masters.yml
vi ~/devenv_bootstrap/virt-infra-ansible/k8s_nodes.yml
如果我们希望利用 DHCP 服务让这些机器拥有固定的 IP,那么我们这里可以给虚拟机设置 mac 地址。
ansible-playbook ./virt-infra.yml \
--limit kvmhost,k8s_masters,k8s_nodes
ansible-playbook ./virt-infra.yml \
--limit kvmhost,k8s_masters,k8s_nodes \
--extra-vars virt_infra_state=running
ansible-playbook ./virt-infra.yml \
--limit kvmhost,k8s_masters,k8s_nodes \
--extra-vars virt_infra_state=shutdown
强烈建议用 ansible 删除虚拟机,因为 KVM HOST 上的 hosts 文件、ssh 的一些配置也要修改。
ansible-playbook ./virt-infra.yml \
--limit kvmhost,k8s_masters,k8s_nodes \
--extra-vars virt_infra_state=undefined
ansible-playbook --ask-become-pass --inventory ./inventory ansible/update-vms.yaml
ansible-galaxy install \
--roles-path ~/.ansible/roles/ \
git+https://github.com/haxorof/ansible-role-docker-ce.git,2.7.0
#
ansible-galaxy list
其代码保存在 ~/.ansible/roles/ansible-role-docker-ce
可以看到这里使用了国内docker镜像源,以提高下载速度。对于私有云环境,可以设置为自己内部镜像库地址。
[devops@192 virt-infra-ansible]$ cat install_docker.yml
---
- hosts: all,!kvmhost
vars:
docker_version: 19.03.8
docker_remove_pre_ce: false
docker_users: [devops]
docker_daemon_config:
registry-mirrors:
[
"http://ovfftd6p.mirror.aliyuncs.com",
"http://registry.docker-cn.com",
"http://docker.mirrors.ustc.edu.cn",
"http://hub-mirror.c.163.com",
]
insecure-registries: ["docker.mirrors.ustc.edu.cn"]
roles:
- role: ansible-role-docker-ce
[devops@192 virt-infra-ansible]$
这里的重点是使用了国内ali的docker-ce源。
ansible-playbook ./install_docker.yml \
--limit k8s_masters,k8s_nodes -v \
-e '{"docker_repository_url": {"CentOS": "http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo"}}'
感谢各位的阅读!关于“如何实现一键自动安装Docker”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!