生产搭建环境:
操作系统:CentOS7.5
内存大小:8GB
硬盘:100G
目录:
1、Docker安装
2、环境准备与清理
3、调优
- Docker安装
1.1 Kernel调优
1.1.1. 配置系统内核参数
#vi /etc/sysctl.conf
net.ipv4.ip_forward=1
net.bridge.bridge-nf-call-iptables=1
net.ipv4.neigh.default.gc_thresh1=4096
net.ipv4.neigh.default.gc_thresh2=6144
net.ipv4.neigh.default.gc_thresh3=8192
kernel.shmmax = 8589934592
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 1010 129280 1010 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
fs.file-max = 6815744
#modprobe br_netfilter
#/sbin/sysctl -p
1.1.2. 修改系统资源限制
#vi /etc/security/limits.conf
- soft nproc 65535
- hard nproc 65535
- soft nofile 65535
- hard nofile 65535
2.2 docker 环境准备
添加用户(可选)
#sudo adduser dkadm
为新用户设置密码(密码输入两次)
#passwd dkadm
为新用户添加sudo权限
#echo 'dkadm ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers
卸载旧版本Docker软件
$ su - dkadm
$ sudo yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine \
container*
更新源信息并依赖包安装
$ sudo yum update -y
$ sudo yum install -y yum-utils device-mapper-persistent-data \
lvm2 bash-completion
添加软件仓库源信息
$ sudo yum-config-manager --add-repo \
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
更新仓库源缓存并安装最新稳定的docker-ce版本
$ sudo yum makecache all
$ sudo yum -y install docker-ce docker-ce-selinux
列出仓库源中可用的docker-ce版本,并安装指定的docker-ce版本(可选)
$ sudo yum list docker-ce --showduplicates | sort -r
$ sudo yum -y install --setopt=obsoletes=0 docker-ce-
如果已经安装高版本docker,可进行降级安装(可选)
$ sudo yum downgrade --setopt=obsoletes=0 -y docker-ce-
把当前用户加入docker组
$ sudo usermod -aG docker dkadm
启动docker服务并设置开机启动
$ sudo systemctl start docker
$ sudo systemctl status docker #查看docker服务运行状态
$ sudo systemctl enable docker
$ sudo systemctl list-unit-files |grep docker
3.3 docker 优化
镜像加速与日志驱动配置
$ sudo vi /etc/docker/daemon.json
{
"registry-mirrors": ["https://yeuphhaz.mirror.aliyuncs.com"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
}
}
使用docker info 查看docker驱动配置及其他信息overlay2
$ sudo docker info
配置完文件重启docker
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker