一、docker安装步骤详解
docker初期版本是1.13(同一版本,开源)——>分类型 1.15 - 1.17 过程中分成两种。
①开源社区 docker-ce
②企业版 docker-ee
今天我们学习安装的是开源版
以下是整体操作
目前 Docker 只能支持 64 位系统。 1.#关闭防火墙 systemctl stop firewalld.service systemctl disable firewalld.service setenforce 0 2.#安装依赖包 yum install -y yum-utils device-mapper-persistent-data lvm2 -------------------------------------------------------------------------------- #yum-utils:提供了 yum-config-manager 工具。 #device mapper: 是Linux内核中支持逻辑卷管理的通用设备映射机制,它为实现用于存储资源管理的块设备驱动提供了一个高度模块化的内核架构。 #device mapper存储驱动程序需要 device-mapper-persistent-data 和 lvm2。 -------------------------------------------------------------------------------- 3.#设置阿里云镜像源 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 4.#安装 Docker-CE 社区版并设置为开机自动启动 yum install -y docker-ce systemctl start docker.service systemctl enable docker.service 5.#查看 docker 版本信息 docker version
1.1关闭防火墙
systemctl stop firewalld.service systemctl disable firewalld.service setenforce 0 ## 关闭防火墙和增强机制
1.2安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2 -------------------------------------------------------------------------------- #yum-utils:提供了 yum-config-manager 工具。 #device mapper: 是Linux内核中支持逻辑卷管理的通用设备映射机制,它为实现用于存储资源管理的块设备驱动提供了一个高度模块化的内核架构。 #device mapper存储驱动程序需要 device-mapper-persistent-data 和 lvm2。 --------------------------------------------------------------------------------
1.3设置阿里云镜像源
cd /etc/ yum.repos.d/ ##切换路径到yum源 yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo ## 添加安装路径
1.4安装 Docker-CE并设置为开机自动启动
yum install -y docker-ce ##安装社区版 systemctl start docker.service systemctl enable docker.service ##开启Docker服务并设置开机自启
1.5查看 docker 版本信息
docker version
二、设置镜像加速(优化)
可以设也可以不设到这里基本上Docker就已经安装完毕了
申请加速器地址
这里我们使用阿里云的镜像,加速镜像下载速度
注册阿里云账号并登录
三、网络优化
vim /etc/sysctl.conf net.ipv4.ip_forward=1 #开启路由转发 sysctl -p #刷新 systemctl restart network ##重启网卡 systemctl restart docker ##重启docker
为什么要开启路由转发功能?
开启路由转发 是让docker0能根据虚拟机ip为自己所有的docker容器分配虚拟ip
四、docker-server端配置文件建议配置
#在daemon. json文件中配置 { "graph":"/data/docker", #数据目录,数据存储位置 "storage-driver":"overlay2", #存储引擎,docker1.18以上版本默认使用overlay2存储引擎。早期的适合存储引擎使用的aufs "insecure-registries":["registry.access.redhat.com","quary.io"], #私有仓库 #"registry-mirrors": [ "https:/lq" ] #镜像加速,在这个下面添加 "bip":"172.137.20.1/24", #docker网络 "exec-opts":["native.cgroupdriver=systemd"], #启动时的额外参数,(是一种挂载驱动,k8s使用) "live-restore":true #当docker容器引擎挂掉的时候,使用docker跑起来的容器还能继续运行 } 以上是建议的配置项 docker的网络建议和宿主机的IP"对照" 比如宿主机10.2.5.6 容器的地址就可以修改为172.5.6.1,这样方便在故障发生时,更容易定位故障节点的位置 systemctl daemon-reload #重载守护进程 systemctl restart docker #重载引擎
{ "graph":"/data/docker", "storage-driver":"overlay2", "insecure-registries":["registry.access.redhat.com","quary.io"], "bip":"172.137.20.1/24", "exec-opts":["native.cgroupdriver=systemd"], "live-restore":true } systemctl daemon-reload systemctl restart docker
五、总结
本章主要是学习如何安装docker以及进行一些简单的优化
六、 一键安装 docker 的 shell 脚本 _
6.1创建 shell 脚本
touch install_docker.sh
chmod 777 install_docker.sh
6.2一键安装 docker 的 shell 脚本
yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine echo -e " =========== 1.delete exist docker ================\n\n" echo -e "step 1: 安装必要的一些系统工具" sudo yum install -y yum-utils device-mapper-persistent-data lvm2 echo -e "\n\nStep 2: 添加软件源信息,国内 Repository 更加稳定" sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo version=sudo cat /etc/redhat-release|sed -r 's/.* ([0-9]+)\..*/\1/' if $version=7; then echo -e "\n\nStep 3: 更新 Centos version is : $version; run yum makecache fast" sudo yum makecache fast elif $version=8; then echo -e "\n\nStep 3: 更新Centos version is : $version; run yum makecache fast" sudo dnf makecache fi echo -e "=========== 2.完成配置 docker Repository ================\n\n" # 安装最新版本的 Docker Engine 和 Container sudo yum install docker-ce docker-ce-cli containerd.io sudo yum -y install docker-ce echo -e "=========== 3.成功安装完 docker ================\n\n" sudo systemctl enable docker sudo systemctl start docker echo -e "=========== 4.自启动 docker ================\n\n" # 1.创建一个目录 sudo mkdir -p /etc/docker # 2.编写配置文件 sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["http://hub-mirror.c.163.com", "https://docker.mirrors.ustc.edu.cn", "https://reg-mirror.qiniu.com", "http://f1361db2.m.daocloud.io" ] } EOF sudo systemctl daemon-reload sudo systemctl restart docker echo -e "=========== 5.配置国内镜像加速 ================\n\n" docker ps -a
现在常用 centos 7、8,所以仅适配这两个系统安装 docker,自己实操过暂时没有问题
希望有大神可以迷津指点