1.更换源文件生成新缓存

(1)第一种方法可以install下载文件的
#下载wget
sudo yum install wget
# 备份当前的 yum 配置
sudo cp -ar /etc/yum.repos.d /etc/yum.repos.d.bak
 
# 删除原有的 repos 文件
sudo rm -f /etc/yum.repos.d/*.repo
 
# 下载阿里云的 CentOS YUM 源配置
# 根据你的 CentOS 版本选择下面的命令执行
# CentOS 7
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
# CentOS 8
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
# 清除缓存并生成新的缓存
sudo yum clean all
sudo yum makecache fast
(2)第二种方法不可以install下载文件的 备份并且插入新的阿里源
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

sudo tee /etc/yum.repos.d/CentOS-Base.repo <<-'EOF'
[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

[updates]
name=CentOS-$releasever - Updates - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7

[extras]
name=CentOS-$releasever - Extras - mirrors.aliyun.com
baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
EOF

2.为了避免操作都是root做的要新建日常使用的用户

adduser <username>   
passwd <username> 
# 给与新建用户root权限
usermod -aG wheel <username>
su - <username> #切换用户
#检测权限是否赋予
sudo ls /root #使用sudo查看root权限下面的文件有文件则权限赋予成功
#安装 Fail2Ban(可选:防止暴力破解)
yum install epel-release -y
yum install fail2ban -y
# 启动并启用 fail2ban
systemctl start fail2ban
systemctl enable fail2ban
#安装日常使用软件
yum install -y vim nano wget curl git unzip htop
#CPU、内存、磁盘
htop
#磁盘使用情况
df -h
#内存使用
free -m
#备份 SSH 配置文件和重要数据
#确保在调整 SSH 等关键配置前备份文件
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

3.下载python3后与系统自带python共存

yum install python3
whereis /* python3 #查询系统python3有关的文件
whereis/*  python  #查询系统python有关的文件
sudo ln -sf <系统文件夹> <想绑定的新文件夹>

4.安装docker-ce 和 docker-compose

# step 1: 安装必要的一些系统工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# Step 2: 添加软件源信息
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# Step 3: 更新并安装 Docker-CE
sudo yum makecache fast
sudo yum -y install docker-ce
# Step 4: 开启Docker服务和系统自动启动
systemctl enable docker && systemctl start docker
# Step 5 :开启阿里云加速
/etc/docker/daemon.json     # vim进入添加没有就新增
{
"registry-mirrors": ["https://1o3kv4j3.mirror.aliyuncs.com"](阿里云容器站生成)
}
# Step 6:重启docker让配置生效
systemctl daemon-reload && systemctl restart docker
# Step 7: 添加rpel7阿里源
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
# Step 8:强制刷新源的缓存下载安装docker-compose
yum makecache fast
yum install docker-compose -y
注意:其他注意事项在下面的注释中
# 官方软件源默认启用了最新的软件,您可以通过编辑软件源的方式获取各个版本的软件包。例如官方并没有将测试版本的软件源置为可用,你可以通过以下方式开启。同理可以开启各种测试版本等。
# vim /etc/yum.repos.d/docker-ce.repo
#   将 [docker-ce-test] 下方的 enabled=0 修改为 enabled=1
#
# 安装指定版本的Docker-CE:
# Step 1: 查找Docker-CE的版本:
# yum list docker-ce.x86_64 --showduplicates | sort -r
#   Loading mirror speeds from cached hostfile
#   Loaded plugins: branch, fastestmirror, langpacks
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable
#   docker-ce.x86_64            17.03.1.ce-1.el7.centos            @docker-ce-stable
#   docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable
#   Available Packages
# Step2 : 安装指定版本的Docker-CE: (VERSION 例如上面的 17.03.0.ce.1-1.el7.centos)
# sudo yum -y install docker-ce-[VERSION]
# 注意:在某些版本之后,docker-ce安装出现了其他依赖包,如果安装失败的话请关注错误信息。例如 docker-ce 17.03 之后,需要先安装 docker-ce-selinux。
# yum list docker-ce-selinux- --showduplicates | sort -r
# sudo yum -y install docker-ce-selinux-[VERSION]
​
# 通过经典网络、VPC网络内网安装时,用以下命令替换Step 2中的命令
# 经典网络:
# sudo yum-config-manager --add-repo http://mirrors.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo
# VPC网络:
# sudo yum-config-manager --add-repo http://mirrors.could.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo

5.docker安装nginx mysql redis

#安装如果需要nginx 里面的配置现单独安装ngxin然后把配置文件copy出来在删除容器映射到刚复制出来的文件
#默认拉取镜像源当前最新版本
docker pull nginx
#启动nginx
docker start nginx
#查看docker容器 nginx启动后的名字和id
docker ps
#开始从配置docker容器里面复制文件到宿主机中
  #1.现在宿主机里面添加文件夹和文件
  mkdir -p /home/cmcc/nginx/conf/nginx.conf
  mkdir -p /home/cmcc//nginx/conf/conf.d
  mkdir -p /home/cmcc/nginx/log
  mkdir -p /home/cmcc/nginx/html
  mkdir -p /home/cmcc/nginx/ssl #不需要443端口可以忽略
  #2.把宿主机里面的配置拷贝出来
  docker cp nginx /etc/nginx/nginx.conf /home/cmcc/nginx/conf/nginx.conf
  docker cp nginx /etc/nginx/conf.d /home/cmcc//nginx/conf/conf.d
  docker cp nginx /var/log/nginx /home/cmcc/nginx/log
  docker cp nginx /usr/share/nginx/html /home/cmcc/nginx/html
  docker cp nginx /etc/nginx/ssl /home/cmcc/nginx/ssl
#删除docker里面的nginx容器
  docker stop nginx 
  docker rm nginx
mysql redis 和以上操作一样
新建一个文件文件夹下面放docker-compose.yaml
version: '3'
services:
  mysql:
    image: mysql
    restart: always
    ports:
      - 13306:3306                     #暴露的端口  宿主机:容器
    networks:
      - tools-ms
    privileged: true
    container_name: mysql              #容器的名称
    environment:
      - "MYSQL_ROOT_PASSWORD=password" #输入需要的密码
      - "MYSQL_DATABASE=halo"          #新建数据库表
      - "TZ=Asia/Shanghai"             #设置失去
    command:
      --default-time-zone='+8:00'
      --default-authentication-plugin=mysql_native_password
      --character-set-server=utf8mb4        #设置数据库字节的编码格式
      --collation-server=utf8mb4_general_ci #设置数据库的编码格式
      --max_connections=1000            #最大连接数据设置
      --innodb_lock_wait_timeout=500    #设置访问500ms
    volumes:                                 #进行文件的映射
      - /etc/localtime:/etc/localtime:ro
      - /home/cmcc/mysql/data:/var/lib/mysql/
      - /home/cmcc/mysql/logs:/var/log/mysql/
      - /home/cmcc/mysql/conf/conf.d:/etc/mysql/conf.d/
      - /home/cmcc/mysql/conf/my.cnf:/etc/mysql/my.cnf
      - /home/cmcc/mysql/mysqlBackup:/var/lib/mysqlBackup
  redis:
    image: redis
    restart: always
    ports:
      - 16379:6379
    networks:
      - tools-ms
    privileged: true
    environment:
      - "TZ=Asia/Shanghai"
    container_name: redis
    volumes:
      - /home/cmcc/redis/data:/data 
    command: redis-server --requirepass password --appendonly yes   #设置需要的密码
   nginx:
    image: nginx
    restart: always
    container_name: nginx
    privileged: true
    restart: always
    networks:
      - tools-ms
    ports:
      - 80:80
      - 443:443
    volumes:
      - /home/cmcc/nginx/conf/nginx.conf:/etc/nginx/nginx.conf
      - /home/cmcc//nginx/conf/conf.d:/etc/nginx/conf.d
      - /home/cmcc/nginx/log:/var/log/nginx
      - /home/cmcc/nginx/html:/usr/share/nginx/html
      - /home/cmcc/nginx/ssl:/etc/nginx/ssl
networks:
  tools-ms:
    driver: bridge


(未完待续)