CentOS7更换国内YUM源和Docker简单应用

news2025/4/16 10:19:55

配置国内阿里云镜像源

## 更新镜像源
# 1.备份
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

# 2.替换镜像源文件
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

# 3.生成缓存
yum clean all
yum makecache fast

安装MySQL8.0

# 1. 导入 MySQL 官方 GPG 密钥
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql

# 2. 下载并安装 MySQL YUM 仓库(推荐使用 yum localinstall)
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
# rpm -ivh mysql80-community-release-el7-3.noarch.rpm
yum localinstall mysql80-community-release-el7-3.noarch.rpm -y

# 3. 安装 MySQL 服务器和客户端(或仅安装客户端)
yum install mysql-community-server mysql-community-client -y

# 4. 启动 MySQL 服务并设置开机自启
systemctl start mysqld
systemctl enable mysqld

# 5. 查看初始 root 密码(MySQL 8.0 默认会生成临时密码)
grep 'temporary password' /var/log/mysqld.log

# 6. 运行安全配置(修改 root 密码、移除匿名用户等)
mysql_secure_installation

升级Mariadb

在 CentOS 7 中升级 MariaDB 到最新版本

## 1. 备份数据库:在升级之前,务必备份所有数据库和配置文件,以防止数据丢失。
# 备份所有数据库
mysqldump -u root -p --all-databases > /root/alldb.sql
# 备份配置文件
cp /etc/my.cnf /etc/my.cnf.bak

## 2. 停止当前运行的 MariaDB 服务
systemctl stop mariadb

## 3. 卸载旧版本的 MariaDB
# 卸载 MariaDB 相关包
yum remove -y mariadb mariadb-server mariadb-libs mariadb-devel
# 清理残留文件
rm -rf /var/lib/mysql/
rm -f /etc/my.cnf

## 4. 添加 MariaDB Yum 仓库
# 创建或编辑 MariaDB 的 Yum 配置文件
vim /etc/yum.repos.d/MariaDB.repo
# 添加以下内容
[mariadb]
name = MariaDB
baseurl = https://mirrors.ustc.edu.cn/mariadb/yum/10.6.21/centos7-amd64
gpgkey=https://mirrors.ustc.edu.cn/mariadb/yum/RPM-GPG-KEY-MariaDB
gpgcheck=1
enabled=1

## 5. 清除 Yum 缓存并生成新的缓存
yum clean all
yum makecache fast

## 6. 安装最新版本的 MariaDB
yum install -y MariaDB-server MariaDB-client

## 7. 启动 MariaDB 服务,并设置开机自启
systemctl start mariadb
systemctl enable mariadb

## 8. 修改密码,设置远程连接
MariaDB [(none)]> ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';
MariaDB [(none)]> CREATE USER 'root'@'%' IDENTIFIED BY 'root';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
MariaDB [(none)]> DELETE FROM mysql.global_priv WHERE User='';
MariaDB [(none)]> FLUSH PRIVILEGES;

## 9. 设置字符编码
vim /etc/my.cnf.d/server.cnf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[server]
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci

## 10. 验证 MariaDB 是否升级成功
mysql --version
SELECT VERSION();

## 11. 导入备份数据
mysql -u root -p
source /root/alldb.sql

## 12. 下载MySQL客户端
https://dbeaver.io/download/

安装Docker

安装Docker步骤

# 安装yum-config-manager配置工具
yum -y install yum-utils
 
# 建议使用阿里云yum源:(推荐)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
 
# 安装docker-ce版本
yum install -y docker-ce
# 启动并开机启动
systemctl enable --now docker
docker --version

配置国内镜像库,以加快访问速度-由于 Docker 官方镜像在国内访问缓慢

可以查看这里的加速器: https://github.com/dongyubin/DockerHub

# 该配置文件及目录,在Docker安装后并不会自动创建
$ mkdir -p /etc/docker

# 配置加速地址

$ vim /etc/docker/daemon.json
{
  "features": {
    "buildkit": true,
    "containerd-snapshotter": true
  },
  "registry-mirrors": [
     "https://docker.registry.cyou",
     "https://docker-cf.registry.cyou",
     "https://dockercf.jsdelivr.fyi",
     "https://docker.jsdelivr.fyi",
     "https://dockertest.jsdelivr.fyi",
     "https://mirror.aliyuncs.com",
     "https://dockerproxy.com",
     "https://mirror.baidubce.com",
     "https://docker.m.daocloud.io",
     "https://docker.nju.edu.cn",
     "https://docker.mirrors.sjtug.sjtu.edu.cn",
     "https://docker.mirrors.ustc.edu.cn",
     "https://mirror.iscas.ac.cn",
     "https://docker.rainbond.cc"
  ]
}

# 重启服务
$ systemctl daemon-reload  # 使daemon.json生效
$ systemctl restart docker

Docker常用命令

# 镜像相关命令
docker images # 查看镜像  hub.docker.com   https://c.163.com/hub
docker search 镜像名称[:tag]  # 在仓库中搜索需要的镜像
docker pull 镜像名称[:tag] # 从仓库下载镜像到本地,镜像名称格式为 名称:版本号,如果版本号不指定则是最新的版本
docker rmi image_id  # 根据镜像ID删除
docker images -q # 查看所有镜像ID
docker rmi `docker images -q`  #删除所有镜像

# 容器相关命令
docker run [option] 镜像名字[:tag]  # 创建与启动容器
docker ps    # 查看正在运行的容器
docker ps -a # 查看所有容器  
docker container rm container_id # 删除指定容器
docker stop container_id # 停止容器
docker start container_id # 启动容器
docker exec -it container_name /bin/bash # 进入容器内部

安装StarRocks

# 拉取StarRocks Docker镜像
$ docker pull starrocks/allin1-ubuntu:latest
# 启动容器时,您需要将StarRocks的端口映射到宿主机的端口,并挂载本地目录以持久化数据,将StarRocks的三个主要端口(Fe端口9030、Http端口8030和Be端口8040)映射到宿主机的相同端口上
$ docker run -p 9030:9030 -p 8030:8030 -p 8040:8040 -itd starrocks/allin1-ubuntu:latest

# 使用MySQL客户端连接StarRocks
$ mysql -h127.0.0.1 -uroot -P9030
mysql> SHOW PROC '/backends'\G
mysql> SHOW PROC '/frontends'\G

-i:保持容器运行,通常与 -t 一起使用,容器创建后自动进入容器,退出容器后,容器自动关闭
-t:创建交互式容器,即为容器分配一个伪终端,通常与 -i 一起使用。
-d:创建一个守护式容器在后台运行,需要 docker exec 命令进入容器,退出后,容器不会关闭
–name :为创建的容器命名。
-v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录)
-p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口,这样宿主机就可以通过端口访问

安装MySQL

# 1、拉取 MySQL 8.0 镜像
docker pull mysql:8.0
# 2、创建数据存储目录和配置文件(持久化)
# 创建数据目录(防止容器删除后数据丢失)
mkdir -p /opt/mysql/data
# 创建配置文件目录(可选,用于自定义 MySQL 配置)
mkdir -p /opt/mysql/conf
# 3、运行 MySQL 容器
docker run -d \
  --name mysql8 \
  -e MYSQL_ROOT_PASSWORD=yourpassword \
  -p 3306:3306 \
  -v /path/to/mysql/data:/var/lib/mysql \
  -v /path/to/mysql/conf:/etc/mysql/conf.d \
  mysql:8.0
# 4. 验证容器运行状态
docker ps -a | grep mysql8
# 5. 进入 MySQL 容器
docker exec -it mysql8 bash
# 登录 MySQL 并授权
mysql -uroot -p
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'yourpassword';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';
FLUSH PRIVILEGES;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2335181.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Cannot find module ‘vue‘ or its corresponding type declarations

在使用vue3vite创建新的工程时&#xff0c;在新增.vue文件时会出现Cannot find module vue这个错误。 只需要我们在项目中的.d.ts文件中添加以下代码即可 declare module *.vue {import { defineComponent } from vue;const component: ReturnType<typeof defineComponent&…

【Python爬虫】详细工作流程以及组成部分

目录 一、Python爬虫的详细工作流程 确定起始网页 发送 HTTP 请求 解析 HTML 处理数据 跟踪链接 递归抓取 存储数据 二、Python爬虫的组成部分 请求模块 解析模块 数据处理模块 存储模块 调度模块 反爬虫处理模块 一、Python爬虫的详细工作流程 在进行网络爬虫工…

欧拉服务器操作系统部署deekseep(Ollama+DeekSeep+open WebUI)

​​一、解压并安装 Ollama​​ # 1. 解压文件&#xff08;默认会得到一个二进制文件&#xff09; tar -xzvf ollama-linux-amd64.tgz# 2. 将二进制文件安装到系统路径 sudo mv ollama /usr/local/bin/ sudo chmod x /usr/local/bin/ollama# 3. 验证安装 ollama --version链接…

#4 我们为什么使用物联网? 以及 物联网的整体结构

设备不物联是否可以&#xff1f; 答案 是可以的&#xff0c;从项目实战的角度&#xff0c;还是有很多包括分拣&#xff0c;控制&#xff0c;检测等应用是分立的&#xff0c;这个和成本&#xff0c;场景&#xff0c;客户接受度等因素有关。 局部看&#xff0c;一些系统的确很简…

3D版的VLA——从3D VLA、SpatialVLA到PointVLA(不动VLM,仅动作专家中加入3D数据)

前言 之前写这篇文章的时候&#xff0c;就想解读下3D VLA来着&#xff0c;但一直因为和团队并行开发具身项目&#xff0c;很多解读被各种延后 更是各种出差&#xff0c;比如从25年3月下旬至今&#xff0c;连续出差三轮&#xff0c;绕中国半圈&#xff0c;具身占八成 第一轮 …

linux Shell编程之循环语句(三)

目录 一. for 循环语句 1. for语句的结构 2. for 语句应用示例 (1) 根据姓名列表批量添加用户 (2) 根据 IP 地址列表检查主机状态 二. 使用 while 循环语句 1. while 语句的结构 2. while 语句应用示例 (1) 批量添加规律编号的用户 (2) 猜价格游戏 三. until 循环语…

C#容器源码分析 --- Queue<T>

Queue<T> 是 System.Collections.Generic 命名空间下的先进先出&#xff08;FIFO&#xff09;动态集合&#xff0c;其核心实现基于​​循环数组​​&#xff0c;通过维护头尾指针实现高效入队和出队操作。 .Net4.8 Queue<T>源码地址&#xff1a;queue.cs (microso…

ViT 模型讲解

文章目录 一、模型的诞生背景1.1 背景1.2 ViT 的提出&#xff08;2020年&#xff09; 二、模型架构2.1 patch2.2 模型结构2.2.1 数据 shape 变化2.2.2 代码示例2.2.3 模型结构图 2.3 关于空间信息 三、实验3.1 主要实验3.2 消融实验 四、先验问题4.1 归纳偏置4.2 先验or大数据&…

IntelliJ IDEA 中安装和使用通义灵码 AI 编程助手教程

随着人工智能技术的发展&#xff0c;AI 编程助手逐渐成为提升开发效率的强大工具。通义灵码是阿里云推出的一款 AI 编程助手&#xff0c;它能够帮助开发者实现智能代码补全、代码解释、生成单元测试等功能&#xff0c;极大地提升了编程效率和代码质量。 IntelliJ IDEA 是一款广…

FreeRTOS入门与工程实践-基于STM32F103(一)(单片机程序设计模式,FreeRTOS源码概述,内存管理,任务管理,同步互斥与通信,队列,信号量)

裸机程序设计模式 裸机程序的设计模式可以分为&#xff1a;轮询、前后台、定时器驱动、基于状态机。前面三种方法都无法解决一个问题&#xff1a;假设有A、B两个都很耗时的函数&#xff0c;无法降低它们相互之间的影响。第4种方法可以解决这个问题&#xff0c;但是实践起来有难…

can‘t set boot order in virtualbox

Boot order setting is ignored if UEFI is enabled https://forums.virtualbox.org/viewtopic.php?t99121 如果勾选EFI boot order就是灰色的 传统BIOS就是可选的 然后选中任意介质&#xff0c;通过右边的上下箭头调节顺序&#xff0c;最上面的应该是优先级最高的 然后就…

2025年第十六届蓝桥杯省赛C++ A组真题

2025年第十六届蓝桥杯省赛C A组真题 1.说明2.题目A&#xff1a;寻找质数&#xff08;5分&#xff09;3.题目B&#xff1a;黑白棋&#xff08;5分&#xff09;4. 题目C&#xff1a;抽奖&#xff08;10分&#xff09;5. 题目D&#xff1a;红黑树&#xff08;10分&#xff09;6. 题…

asp.net Kestrel 和iis区别

Kestrel 和 IIS 都是用于托管 Web 应用程序的服务器&#xff0c;不过它们在多个方面存在显著差异&#xff0c;下面为你详细分析&#xff1a; 1. 所属平台与跨平台能力 Kestrel&#xff1a;是.NET Core 及后续版本的一部分&#xff0c;具备跨平台特性&#xff0c;可在 Windows…

《植物大战僵尸融合版v2.4.1》,塔防与创新融合的完美碰撞

《植物大战僵尸融合版》是基于经典塔防游戏《植物大战僵尸》的创意同人改版&#xff0c;由“蓝飘飘fly”等开发者主导制作。它在保留原版核心玩法的基础上&#xff0c;引入了独特的植物融合机制&#xff0c;玩家可以将不同的植物进行组合&#xff0c;创造出全新的植物种类&…

[LeetCode 1696] 跳跃游戏 6(Ⅵ)

题面&#xff1a; LeetCode 1696 数据范围&#xff1a; 1 ≤ n u m s . l e n g t h , k ≤ 1 0 5 1 \le nums.length, \ k \le 10^5 1≤nums.length, k≤105 − 1 0 4 ≤ n u m s [ i ] ≤ 1 0 4 -10^4 \le nums[i] \le 10^4 −104≤nums[i]≤104 思路 & Code 重点&…

Redis 常问知识

1.Redis 缓存穿透问题 缓存穿透&#xff1a;当请求的数据在缓存和数据库中不存在时&#xff0c;该请求就跳出我们使用缓存的架构&#xff08;先从缓存找&#xff0c;再从数据库查找、这样就导致了一直去数据库中找&#xff09;&#xff0c;因为这个数据缓存中永远也不会存在。…

履带小车+六轴机械臂(2)

本次介绍原理图部分 开发板部分&#xff0c;电源供电部分&#xff0c;六路舵机&#xff0c;PS2手柄接收器&#xff0c;HC-05蓝牙模块&#xff0c;蜂鸣器&#xff0c;串口&#xff0c;TB6612电机驱动模块&#xff0c;LDO线性稳压电路&#xff0c;按键部分 1、开发板部分 需要注…

多卡集群 - Docker命令来启动一个容器的实例

一、Docker下载安装及相关配置 桌面版&#xff1a;Docker Desktop: The #1 Containerization Tool for Developers | Docker 服务器版&#xff1a;Install | Docker Docs 我们先以windows桌面版为例进行安装&#xff0c;一般在公司里会使用服务器版本&#xff0c;后期也会出一…

测试第三课-------自动化测试相关

作者前言 &#x1f382; ✨✨✨✨✨✨&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f367;&#x1f382; ​&#x1f382; 作者介绍&#xff1a; &#x1f382;&#x1f382; &#x1f382; &#x1f389;&#x1f389;&#x1f389…

ebpf: CO-RE, BTF, and Libbpf(二)

本文内容主要来源于Learning eBPF&#xff0c;可阅读原文了解更全面的内容。 本文涉及源码也来自于书中对应的github&#xff1a;https://github.com/lizrice/learning-ebpf/ 概述 上篇文章主要讲了CO-RE最关键的一环&#xff1a;BTF&#xff0c;了解其如何记录内核中的数据结…