每日一个脚本之一键部署Docker

每日一个shell脚本之一键部署Docker

源码参上

bash 复制代码
 #!/usr/bin/bash                          
 # **************************************
 #   CSDN:         M乔木 
 #   qq邮箱:        [email protected] 
 #   解释器:        这是一个shell脚本        
 # **************************************


    #声明函数
    function Aq_jc(){
        clear
        #检测防火墙selinux
        echo "------------------------------------------------------------"
        echo "[1]开始检测防火墙SeLinux是否关闭..."
        sleep 1
        f_w=`systemctl status firewalld | awk '/Active:/{print $2}'`
        s_l=`getenforce`
        #判断是否关闭 没关闭就结束运行
        if [ ${f_w} = "inactive" -a ${s_l} = "Disabled" ];then
        echo "[2]防火墙SeLinux已关闭..."
        sleep 1
        echo "[3]正在飞速安装docker中..."
        sleep 1
        else
        echo "[2]防火墙SeLinux未关闭..."
        systemctl disable firewalld &>/dev/null
        sed -i 's/SELINUX=enforcing/SELINUX=disabled/'  /etc/sysconfig/selinux
        sed -i 's/SELINUX=enforcing/SELINUX=disabled/'  /etc/selinux/config  
        sleep 1
        echo "[3]正在关闭..."
        sleep 1
        echo "[4]防火墙SeLinux已关闭 请重启机器生效..."
        echo "------------------------------------------------------------"
        exit 0
        fi
        #防火墙关了的话就继续开启路由转发
        echo "[4]正在开启路由转发虚拟网桥..."
        echo 'net.ipv4.ip_forward =1' >>/etc/sysctl.conf
        echo 'net.bridge.bridge-nf-call-iptables =1' >>/etc/sysctl.conf
        echo 'net.bridge.bridge-nf-call-ip6tables =1' >>/etc/sysctl.conf
        sysctl  -p &>/dev/null
        sleep 1
        #防火墙关闭的话就清理docker环境
        echo "[5]正在清理环境中..."
        yum -y remove docker  docker-client  docker-client-latest  docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine &>/dev/null
        sleep 1
        echo "[6]开始安装docker依赖..."
        yum install -y yum-utils device-mapper-persistent-data lvm2 &>/dev/null
        sleep 1
        echo "[7]开始配置阿里docker源..."
        yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo &>/dev/null
        yum clean all &>/dev/null && yum makecache fast &>/dev/null
        sleep 1
        echo "[8]开始安装docker..."
        yum -y install docker-ce doker-ce-cli containerd.io &>/dev/null
        sleep 1
        echo "[9]开始配置开机自启..."
        systemctl start docker &>/dev/null
        systemctl enable docker &>/dev/null
        systemctl restart docker &>/dev/null
        sleep 1
        echo "[10]开始配置阿里云镜像加速器..."
        clear
        echo "[11]开始建立docker加速器放置目录..."
        mkdir -p /etc/docker
        sleep 1
        echo "[12]开始写入配置..."
tee /etc/docker/daemon.json &>/dev/null<<-'EOF'
{
  "registry-mirrors": ["https://2zwkpj0m.mirror.aliyuncs.com"]
}
EOF
        sleep 1
        echo "[13]重新加载system工具..."
        systemctl daemon-reload &>/dev/null
        sleep 1
        echo "[14]重新启动docker..."
        systemctl restart docker &>/dev/null
        sleep 1
        echo "[15]阿里云镜像加速器配置完毕!"
        sleep 1
        echo "[16]开始拉取基础镜像centos:7..."
        docker pull centos:7 &>/dev/null
        sleep 1
        echo "[17]已部署docker及第一个基础镜像centos7已配置完毕!"
        sleep 1
        echo '[18]开始使用你的一个docker命令体验激动人心的docker吧!'
        sleep 1
        echo '[19]docker images:查看已下载镜像'
        sleep 1
        echo '[20]docker info:查看docker基本信息'
        sleep 1
        echo '[21]docker run -it centos:7 /bin/bash:以centos7为基础启动一个容器'
        echo "------------------------------------------------------------"
    }
    #主界面
    Aq_jc

使用方法

bash 复制代码
[root@qm ]# vim  docker-az.sh
#复制粘贴上面的代码进去

[root@qm ]# sh docker-az.sh
#运行脚本

结尾

还是那话点赞关注转发感谢!

相关推荐
tonngw12 分钟前
【Mac 从 0 到 1 保姆级配置教程 16】- Docker 快速安装配置、常用命令以及实际项目演示
macos·docker·容器·开源·github·docker desktop·orbstack
moxiaoran575318 分钟前
uni-app学习笔记二十九--数据缓存
笔记·学习·uni-app
pop_xiaoli2 小时前
OC—UI学习-2
学习·ui·ios
Lin Hsüeh-ch'in2 小时前
Vue 学习路线图(从零到实战)
前端·vue.js·学习
debug 小菜鸟3 小时前
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
docker·云计算·aws
SpikeKing3 小时前
Server - 使用 Docker 配置 PyTorch 研发环境
pytorch·docker·llm
地衣君3 小时前
RISC-V 开发板 + Ubuntu 23.04 部署 open_vins 过程
linux·ubuntu·risc-v
恰薯条的屑海鸥3 小时前
零基础在实践中学习网络安全-皮卡丘靶场(第十五期-URL重定向模块)
学习·安全·web安全·渗透测试·网络安全学习
5:003 小时前
云备份项目
linux·开发语言·c++
码农101号4 小时前
Linux中shell编程表达式和数组讲解
linux·运维·服务器