服务器脚本推荐,yum更新阿里镜像源、安装Docker、使用Docker安装MySQL服务

简介: 服务器脚本推荐,yum更新阿里镜像源、安装Docker、使用Docker安装MySQL服务

前言

最近总是有粉丝找莫提帮忙搭建一下服务器的环境,而且都是新服务器,也就是刚刚从 XX云 上购买创建的。最近打算多做一些关于服务器的视频,比如搭建个人网站、搭建Java服务、搭建MySQL服务、配置反向代理 …

然后周末无聊,就写了三个脚本,非常的方便实用,只需要一行命令就可以实现下面的功能,但服务器一定要是CentOS7的系统才能使用。

  1. 更换yum源为阿里源,解决yum安装/更新速度慢的问题
  2. 安装Docker并配置镜像加速器
  3. 使用Docker安装MySQL

使用

获取脚本可在我的公众号【爱学习的莫提】,后台回复【脚本】

之后你会得到三个文件,如下图所示:

之后你需要将这三个文件上传的服务器(一定是CentOS7)

注意:上传服务器之后需要赋予脚本执行权限:

chmod -R 777 *.sh

之后只需要分别执行三个脚本就可以了

./ali-image.sh
./docker-install.sh
./mysql-install.sh

当然这几个脚本也是可以加一些参数的,具体使用可以往下接着看。

当然在这里声明一下:鄙人能力有限,也没有专门学过Shell脚本,互相学习,欢迎大家在评论区交流!

ali-image.sh

官网下载的CentOS的yum源不是国内镜像,这样会导致yum在线安装及更新速度很慢。这时候需要将yum源设置为国内镜像站点,提升速度。国内主要开源的开源镜像站点应该是网易和阿里云了。

这个脚本可以帮你把你的服务器的yum镜像源自动配置为国内阿里的镜像,并完成原有配置的备份。

使用起来也是非常方便,在脚本所在目录执行:./ali-image.sh 即可。

执行效果

脚本内容

如果看不懂脚本可以直接跳过

#!/bin/bash
# description: 更换Centos7默认镜像源为阿里源
# author: 莫提
cd /etc/yum.repos.d/
# 备份原配置
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
# 下载阿里镜像配置
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
echo " "
echo "=================="
echo "更换阿里镜像源成功"
echo "=================="
echo " "
# 重新生成缓存
yum makecache

docker-install.sh

在服务器上安装Docker还是稍微有一丢丢麻烦,首先要安装一些基本的依赖,如果重新安装还需要卸载和删除一些指定的文件,如果不配置镜像加速器的话,使用docker pull也会非常的慢,包括将Docker设置为开启自启等。这些复杂的操作加一起就更加的繁琐了。

所以我写了一个脚本来拯救上面的这些问题,只需要执行一行命令就可以完成上面的诸多操作。

使用起来也是非常方便,在脚本所在目录执行:./docker-install.sh 即可。

如果你之前安装过Docker,那么你需要在执行脚本的使用使用-r参数即可:./docker-install.sh -r,这样在安装的时候就可先去卸载已有的Docker并重新安装。

执行效果

脚本内容

如果看不懂脚本可以直接跳过

#!/bin/bash
# description: CentOS7安装Docker
# author: 莫提
# 卸载旧版本
if [ -n "$1" ]; then
   # 校验传入参数 
    if [ "$1" = "-r" ]
    then
  echo "开始卸载已有Docker服务..."
  systemctl stop docker
  yum -y remove docker-ce
  rm -rf /var/lib/docker
  yum -y remove docker docker-common docker-selinux docker-engine
    else
        echo " "
  echo "=================================="
  echo "=============安装失败============="
  echo "=================================="
  echo "非法参数:$1"
  echo "=================================="
  echo "首次安装:./docker-install.sh"
  echo "重新安装:./docker-install.sh -r"
  echo "=================================="
  echo " "
    fi
fi
echo "开始安装Docker服务..."
# 安装需要的软件包
yum install -y yum-utils device-mapper-persistent-data lvm2
# 设置stable镜像仓库
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 更新yum软件索引
yum makecache fast
# 安装Docker-ce
yum -y install docker-ce
# 启动Docker
systemctl start docker
# 开机自启
systemctl enable docker
# 配置Docker镜像加速器
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://c2yf9ia3.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
echo " "
echo "=================================="
echo "=============安装成功============="
echo "=================================="
echo " "
docker ps

mysql-install.sh

最后一个脚本是使用Docker来搭建MySQL服务,一般来说常规套路是先去search、然后pull、最后再run,但是run的时候要加一大堆参数,非常的不好记,所以我也封装成了脚本,使用起来美滋滋。

这个脚本支持最多携带三个参数:

  • -v:小写v,表示MySQL的版本,比如 5.7、5.5、 8.0 … 只要是官方存在的版本都行,如果不加这个参数,默认为 5.7
  • -p:小写p,表示暴露的端口,如果不加这个参数,默认为 3306
  • -P:大写P,表示MySQL的root用户的默认密码,如果不加这个参数,默认为 123456

这三个参数可以携带任意数量,并且不分先后顺序。

./mysql-install.sh -v5.5 -p3305 -P123321
./mysql-install.sh -p3305 -v5.5 
./mysql-install.sh -P000111

执行效果

脚本内容

如果看不懂脚本可以直接跳过

#!/bin/bash
# description: 使用Docker安装Mysql5.7
# author: 莫提
version=5.7
password=123456
port=3306
if [[ $1 == -v* ]];then
  version=${1:2}
elif [[ $1 == -P* ]];then
  password=${1:2}
elif [[ $1 == -p* ]];then
  port=${1:2}
fi
if [[ $2 == -v* ]];then
  version=${2:2}
elif [[ $2 == -P* ]];then
  password=${2:2}
elif [[ $2 == -p* ]];then
  port=${2:2}
fi
if [[ $3 == -v* ]];then
  version=${3:2}
elif [[ $3 == -P* ]];then
  password=${3:2}
elif [[ $3 == -p* ]];then
  port=${3:2}
fi
echo " "
echo "============================"
echo "=======开始安装MySQL========"
echo "============================"
echo "Version:$version"
echo "Password:$password"
echo "Port:$port"
echo "============================"
echo " "
# 拉去镜像
docker pull mysql:$version
# 运行镜像
docker run --restart=always -p $port:3306 --name mysql$version -e MYSQL_ROOT_PASSWORD=$password -d mysql:$version
echo "============================"
echo "=======安装MySQL成功========"
echo "============================"
docker ps


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
相关文章
|
12月前
|
Ubuntu 关系型数据库 MySQL
MySQL源码编译安装
本文详细介绍了MySQL 8.0及8.4版本的源码编译安装全过程,涵盖用户创建、依赖安装、cmake配置、编译优化等步骤,并提供支持多Linux发行版的一键安装脚本,适用于定制化数据库部署需求。
2608 4
MySQL源码编译安装
|
12月前
|
Ubuntu 关系型数据库 MySQL
MySQL二进制包安装
本文详细介绍了在多种Linux系统上通过二进制包安装MySQL 8.0和8.4版本的完整过程,涵盖用户创建、glibc版本匹配、程序解压、环境变量配置、初始化数据库及服务启动等步骤,并提供支持多发行版的一键安装脚本,助力高效部署MySQL环境。
2004 4
MySQL二进制包安装
|
12月前
|
安全 关系型数据库 MySQL
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
本文详细介绍在openSUSE系统上通过离线RPM包安装MySQL 8.0和8.4版本的完整步骤,包括下载地址、RPM包解压、GPG密钥导入、使用rpm或zypper命令安装及服务启动验证,涵盖初始密码获取与安全修改方法,适用于无网络环境下的MySQL部署。
1061 3
MySQL包安装 -- SUSE系列(离线RPM包安装MySQL)
|
12月前
|
关系型数据库 MySQL Linux
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
本文介绍了在openSUSE系统上通过SUSE资源库安装MySQL 8.0和8.4版本的完整步骤,包括配置国内镜像源、安装MySQL服务、启动并验证运行状态,以及修改初始密码等操作,适用于希望在SUSE系列系统中快速部署MySQL的用户。
1088 3
MySQL包安装 -- SUSE系列(SUSE资源库安装MySQL)
|
12月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
1055 6
|
12月前
|
弹性计算 运维 安全
阿里云轻量应用服务器与云服务器ECS啥区别?新手帮助教程
阿里云轻量应用服务器适合个人开发者搭建博客、测试环境等低流量场景,操作简单、成本低;ECS适用于企业级高负载业务,功能强大、灵活可扩展。二者在性能、网络、镜像及运维管理上差异显著,用户应根据实际需求选择。
957 10
|
12月前
|
弹性计算 ice
阿里云4核8g服务器多少钱一年?1个月和1小时价格,省钱购买方法分享
阿里云4核8G服务器价格因实例类型而异,经济型e实例约159元/月,计算型c9i约371元/月,按小时计费最低0.45元。实际购买享折扣,1年最高可省至1578元,附主流ECS实例及CPU型号参考。
948 8
|
12月前
|
运维 安全 Ubuntu
阿里云渠道商:服务器操作系统怎么选?
阿里云提供丰富操作系统镜像,涵盖Windows与主流Linux发行版。选型需综合技术兼容性、运维成本、安全稳定等因素。推荐Alibaba Cloud Linux、Ubuntu等用于Web与容器场景,Windows Server支撑.NET应用。建议优先选用LTS版本并进行测试验证,通过标准化镜像管理提升部署效率与一致性。
|
12月前
|
存储 监控 安全
阿里云渠道商:云服务器价格有什么变动?
阿里云带宽与存储费用呈基础资源降价、增值服务差异化趋势。企业应结合业务特点,通过阶梯计价、智能分层、弹性带宽等策略优化成本,借助云监控与预算预警机制,实现高效、可控的云资源管理。
|
12月前
|
弹性计算 运维 安全
区别及选择指南:阿里云轻量应用服务器与ECS云服务器有什么区别?
阿里云轻量应用服务器适合个人开发者、学生搭建博客、测试环境,易用且性价比高;ECS功能更强大,适合企业级应用如大数据、高流量网站。根据需求选择:轻量入门首选,ECS专业之选。
759 2