CentOS7 Docker安装脚本

有时候需要在服务器上部署Docker,每次都要执行很多命令,现在整理为一个脚本,可以放到shell文件中,方便安装Docker。
假设docker的文件目录为/data/kube/docker

#!/bin/bash
echo 更新阿里yum源
cd /etc/yum.repos.d/ 
mv CentOS-Base.repo CentOS-Base.repo_bak
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
echo 更新yum源
yum makecache all
echo 添加yum工具
yum install -y yum-utils
echo 添加docker的yum源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
echo 添加用户
adduser dockeradm
echo 为新用户设置密码
passwd dockeradm

echo 为新用户添加sudo权限
echo 'dockeradm ALL=(ALL)       ALL' >> /etc/sudoers
echo 删除之前安装的docker(可选)
sudo yum remove -y docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine container*
echo 安装必要的一些系统工具
yum install -y device-mapper-persistent-data lvm2 bash-completion
echo 更新并安装 Docker-CE
version=20.10.3
sudo yum -y install --setopt=obsoletes=0 docker-ce-${version} docker-ce-selinux-${version}
echo 把dockeradm用户加入docker组,就可以使用dockeradm操作docker了。有privileges权限
usermod -aG docker dockeradm
echo 设置开机启动
systemctl enable docker
echo 创建 /etc/docker/daemon.json
mkdir /etc/docker
cat>/etc/docker/daemon.json<<EOF
{
  "registry-mirrors": ["https://reg-mirror.qiniu.com","https://hub-mirror.c.163.com"],
  "insecure-registries": [],
  "max-concurrent-downloads": 10,
  "log-driver": "json-file",
  "log-level": "warn",
  "log-opts": {
    "max-size": "100m",
    "max-file": "100"
    },
  "data-root": "/data/kube/docker",
  "exec-opts": ["native.cgroupdriver=cgroupfs"],
  "storage-driver": "overlay2",
  "storage-opts": [
    "overlay2.override_kernel_check=true"
  ]
}
EOF
echo 启动docker
systemctl start docker

以上文件可以保存成installDocker.sh
在命令行下执行:

vi installDocker.sh
(粘贴上面的代码)
:wq(保存)
# 在root用户下执行
sh installDocker.sh

即可。

以下是新系统初始化可能用到的配置命令,也记录一下:

echo 关闭selinux
sudo sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
echo 关闭防火墙
systemctl stop firewalld.service && systemctl disable firewalld.service
echo 调整时区
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
sudo echo 'LANG="en_US.UTF-8"' >> /etc/profile;source /etc/profile
echo 优化内核参数
cat >> /etc/sysctl.conf<<EOF
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
EOF
sysctl -p
echo 添加在线时间同步服务
yum -y install ntp
systemctl start ntpd
systemctl enable ntpd
# 修改hostname, 去掉注释
# echo "server01" > /etc/hostname 
# hostname server01

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

曲奇饼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值