CentOS 7.9 常用环境配置


文章目录

      • 环境准备
      • 安装docker
      • 安装Java
      • 安装maven
      • 安装git
      • 安装MYSQL
      • 安装Redis
      • 安装RabbitMq
      • 安装minio


环境准备

操作系统版本为centos 7.9,内核版本需要在3.10以上

sudo uname -r

sudo cat /etc/redhat-release

image.png

1.确认环境好后,安装工具包并设置仓库

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

image.png

设置yum源
设置一下yum源,这里采用一下阿里云,也可以使用网易云等。
阿里巴巴开源镜像站-OPSX镜像站-阿里云开发者社区
image.png

  1. 备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

image.png

2.下载新的centos-Base.repo

wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

3.运行 yum makecache 生成缓存

yum clean all # 清除系统所有的yum缓存
yum makecache # 生成新的yum缓存
yum repolist

image.png

安装docker

1.通过yum安装Docker

yum -y install docker-ce

报错 Loaded plugins: fastestmirror
image.png
解决方案:
1.禁用插件

vi /etc/yum/pluginconf.d/fastestmirror.conf
 enabled = 1//由1改为0,禁用该插件

vi /etc/yum.conf
plugins=1//改为0,不使用插件

image.png

2.清除yum缓存,重新遍历

yum clean all # 清除系统所有的yum缓存
yum makecache # 生成新的yum缓存
yum repolist

3.重新安装docker

#通过yum安装Docker
yum -y install docker-ce

#启动Docker
sudo systemctl start docker
#设置Docker开机自启
sudo systemctl enable docker
#查看Docker版本
sudo docker version

image.png
配置镜像加速
1…安装完成后,配置阿里镜像加速
(使用命令查看镜像源,如果没有该文件或没有配置,则镜像源位于国外)

cat /etc/docker/daemon.json

2.配置国内镜像

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["加速器地址"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

//加速器镜像地址,可以去阿里云等注册获取,
也可以使用 http://hub-mirror.c.163.com该地址

image.png

配置远程访问docker
1.找到以ExecStart开头的行,在该行的末尾添加内容 -H tcp://0.0.0.0:2375 添加完成后保存文件。
image.png
2.重启完成后可通过浏览器访问http://Docker主机IP:2375/version将输出Docker版本信息,若无法访问请检查防火墙设置。

image.png

安装Java

卸载原有的Java版本
可以先用命令查看一下Linux系统是否已有Java。

java -verison

image.png

如果系统自带了 Open JDK,我们需要先把它卸载掉。

sudo rpm -qa | grep java | xargs rpm -e --nodeps

image.png
删除完成后,重新安装。
1.进入对应的目录

创建一个java目录
mkdir -p /home/local/java
进入该目录,将压缩包上传至该目录下
cd /home/local/java

或者在一个已有的目录下安装jdk( 例如 在/usr/local 目录下安装jdk,切换到该目录,并将压缩包上传到该目录下)
cd /usr/local

2.通过Linux命令下载JDK安装包并解压

tar -zxvf jdk-8u401-linux-x64.tar.gz 

# 将jdk1.8.0_401改名为java
mv jdk1.8.0_401 java

image.png

添加环境变量

1.进入当前目录(/root )下.bash_profile文件,按i进入编辑模式
image.png

image.png

2.在文件下方添加以下代码

export JAVA_HOME="/home/local/java/java/"    //安装的JDK目录
export CLASSPATH="$JAVA_HOME/lib"
export PATH=$JAVA_HOME/bin:$PATH

image.png

3.按下Esc退出编辑模式,Shift + q 进入键盘编辑,wq 保存并退出后并使用该命令重新加载下配置文件。

source 刚刚修改的文件的路径
source /root/.bash_profile

4.验证Java是否安装成功。

image.png

5.建立一个Java超链接

这是因为,一些自己注册的Linux服务,默认情况下会从 /usr/bin/java路径使用 Java。如果系统的 Java环境是通过 yum安装的时候,这个超链接会自动创建;如果是自己下载包安装的话,这个超链接就需要自己手动创建了。

ln -s /home/local/java/java/bin/java /usr/bin/java

至此,Java环境全部配置完毕,可以正常使用了。

安装maven

1.创建文件夹,用于存放maven。

mkdir /home/local/maven && cd /home/local/maven

解压
tar xzvf apache-maven-3.6.3-bin.tar.gz

2.配置PATH,同上面的Java环境配置。

export MAVEN_HOME="/home/local/maven/apache-maven-3.6.3"
export PATH=$MAVEN_HOME/bin:$PATH

3.检查是否配置完成。

mvn -v

image.png

maven的其他配置
1.设置本地仓库路径

<localRepository>/home/local/maven/local_repo/</localRepository>

image.png

2.更换为阿里源

<mirror>
      <mirrorOf>central</mirrorOf>
      <id>aliyun-public</id>
      <name>aliyun maven public repository</name>
      <url>https://maven.aliyun.com/repository/public</url>
    </mirror>

image.png

安装git

使用命令下载后,并进行测试

sudo yum install -y git

安装完成后,测试版本号
git --version

image.png

安装MYSQL

1.拉取官方镜像

# 拉取 mysql 5.7 如果不写后面的版本号则会自动拉取最新版
sudo docker pull mysql:5.7     

2.创建并启动容器
创建文件夹,用于存放MYSQL配置文件、日志以及数据。

sudo mkdir -p /home/docker/mysql/conf /home/docker/mysql/logs /home/docker/mysql/data

image.png

3.创建并编辑配置文件。

sudo vi /home/docker/mysql/conf/my.conf

my.conf配置文件内容如下,可根据实际情况做适当调整。

[mysqld]

character-set-server=utf8

#绑定IPv4和3306端口

bind-address = 0.0.0.0

port = 3306

sql_mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION"

default_storage_engine=innodb

innodb_buffer_pool_size=1000M

innodb_log_file_size=50M

# 允许最大连接数

max_connections=1000

# 时区

default-time-zone = '+8:00'

[mysql]

default-character-set=utf8

[mysql.server]

default-character-set=utf8

[mysql_safe]

default-character-set=utf8

4.创建容器并挂载目录

sudo docker run -p 3306:3306 --name mysql --restart always --privileged=true  -v /home/docker/mysql/conf:/etc/mysql -v /home/docker/mysql/logs:/var/log/mysql -v /home/docker/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d mysql:5.7

#参数说明
-p 3306:3306 映射端口
--name mysql 容器名称
--restart always 自动启动容器
--privileged=true 提升容器内权限
-v /home/docker/mysql/conf:/etc/mysql 映射配置文件目录
-v /home/docker/mysql/logs:/var/log/mysql 映射日志目录
-v /home/docker/mysql/data:/var/lib/mysql 映射数据目录
-e MYSQL_ROOT_PASSWORD=root root用户密码
-d mysql:5.7 后台运行-镜像名称

5.进入Docker终端通过mysql客户端访问Mysql

sudo docker exec -it  mysql  /bin/bash
sudo mysql -uroot -proot

image.png

远程连接
远程连接MYSQL时连接信息如下:
image.png

如果容器运行正常,但是无法访问到MySQL,一般有以下几个可能的原因:
1.在云服务器安全组中添加对应开放的端口号。

#开放端口
sudo systemctl status firewalld
sudo firewall-cmd  --zone=public --add-port=3306/tcp -permanent
sudo firewall-cmd  --reload

#关闭并禁用防火墙
sudo systemctl stop firewalld
sudo systemctl disable firewalld

2.MYSQL未设置远程访问权限

grant all privileges on *.* to root@'%' identified by "root";

设置后,连接测试成功。

在这里插入图片描述

安装Redis

1.拉取镜像。

# 拉取 redis 6 如果不写后面的版本号则会自动拉取最新版
sudo docker pull redis:6   

2.创建文件夹,用于存放Redis配置文件及数据。

sudo mkdir -p /home/docker/redis/conf /home/docker/redis/data

在这里插入图片描述


从官网下载配置文件并修改默认配置项,修改完成后将redis.conf文件复制到/home/docker/redis/conf目录。

bind 127.0.0.1 -::1  #注释掉这部分,允许所有IP访问Redis
protected-mode no #默认yes,开启保护模式,限制为本地访问,改为no,取消限制
databases 16 #数据库个数(可选)
appendonly yes #redis持久化(可选)
requirepass redis #开启访问认证并配置redis访问密码

3.创建容器并挂载目录

docker run -itd --name redis -p 6379:6379 redis:6 --requirepass 'Redis' --bind 0.0.0.0 --daemonize NO --protected-mode yes

#参数说明
-p 6379:6379 映射端口
--name redis 容器名称
--restart always 自动启动容器
--privileged=true 提升容器内权限
-v /home/docker/redis/conf/redis.conf:/etc/redis/redis.conf 映射配置文件
-v /home/docker/redis/data:/data 映射数据目录
-d redis:6 后台运行-镜像名称
redis-server /etc/redis/redis.conf  让redis按照这个redis.conf的配置启动
--appendonly yes redis启动后数据持久化

4.本地连接测试

sudo docker exec -it  redistest  /bin/bash
sudo redis-cli
127.0.0.1:6379> auth 密码

image.png

远程连接
使用图形化工具连接redis,连接测试成功(如图所示)。
image.png

安装RabbitMq

1.拉取官方镜像

# 拉取 rabbitmq 3 如果不写后面的版本号则会自动拉取最新版
sudo docker pull rabbitmq:3-management

2.创建容器并挂载目录

sudo mkdir -p /home/docker/rabbit/data

3.启动容器

sudo docker run  -p 15672:15672 -p 5672:5672 --name rabbitmq --restart=always --privileged=true -v /home/docker/rabbit/data:/var/lib/rabbitmq -e RABBITMQ_DEFAULT_USER=rabbit -e RABBITMQ_DEFAULT_PASS=Rabbit -d rabbitmq:3-management

#参数说明
-p 15672:15672 -p 5672:5672 映射端口
--name rabbitmq 容器名称
--restart always 自动启动容器
--privileged=true 提升容器内权限
-v /home/docker/rabbit/data:/var/lib/rabbitmq 映射数据目录
-e RABBITMQ_DEFAULT_USER=rabbit 默认用户名
-e RABBITMQ_DEFAULT_PASS=Rabbit 默认密码
-d rabbitmq:3-management 后台运行-镜像名称

4.访问rabbitmq
控制台访问地址:http://Docker主机IP:15672/,输入默认的用户名和密码即可登录。
image.png

安装minio

1.拉取官方镜像

docker pull minio/minio

2.创建目录

mkdir -p /home/minio/config
mkdir -p /home/minio/data

3.启动容器

docker run -p 9000:9000 -p 9090:9090 \
  --name minio -d --restart=always \
  -e "MINIO_ACCESS_KEY=minioadmin" \
  -e "MINIO_SECRET_KEY=minioadmin" \
  -v /home/minio/data:/data \
  -v /home/minio/config:/root/.minio \
  minio/minio server /data --console-address ":9090" -address ":9000"

4.浏览器访问地址 http://localhost:9090 ,可访问 MinIO 的 Web 控制台,输入相应的用户名和密码就行。

image.png
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Android14音频进阶:AudioFlinger究竟如何混音?(六十三)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒体系统工程师系列【原创干货持续更新中……】🚀 人生格言: 人生从来没有捷径,只…

最新ChatGPT/GPT4科研应用与AI绘图及论文高效写作教程

原文链接&#xff1a;最新ChatGPT/GPT4科研应用与AI绘图及论文高效写作教程https://mp.weixin.qq.com/s?__bizMzUzNTczMDMxMg&mid2247598050&idx5&sn70fd3f5946d581ad9c1363295b130ef5&chksmfa823e05cdf5b713baf9cf1381bfb2455ad675a0b21e194bef8b76f35d6aa77…

轻巧的elasticsearch可视化工具

一、概述 常见的ES可视化工具有&#xff1a; kibanaelasticsearch-headElasticHDDejavucerebroelasticview 一、安装elasticview 在众多ES可视化龚居中&#xff0c;elasticview是一款比较轻量简洁&#xff0c;兼容性较好&#xff0c;可以兼容多个ES版本&#xff0c;不但可以进…

PySpark案例实战

一、前言介绍 二、基础准备 # 导包 from pyspark import SparkConf,SparkContext #创建SparkConf类对象 confSparkConf().setMaster("local[*]").setAppName("test_spark_app") #基于SparkXConf类对象创建SparkContext对象 scSparkContext(confconf) #打印…

PCL 极大似然估计法拟合平面

目录 一、算法原理1、极大似然估计2、拟合过程3、参考文献二、代码实现三、结果展示一、算法原理 1、极大似然估计 在以最小二乘法为基础的估计算法中, 所有的参数都是确定值;而实际上,测量数据与未知参数都具有一定的随机性。这就导致了最小二乘法估计质量的缺陷以及对白噪…

整型数组按个位值排序 - 华为OD统一考试(C卷)

OD统一考试&#xff08;C卷&#xff09; 分值&#xff1a; 100分 题解&#xff1a; Java / Python / C 题目描述 给定一个非空数组(列表)&#xff0c;其元素数据类型为整型&#xff0c;请按照数组元素十进制最低位从小到大进行排序&#xff0c;十进制最低位相同的元素&#xf…

机器学习——编程实现从零构造训练集的决策树

自己搭建一棵决策树【长文预警】 忙了一个周末就写到了“构建决策树”这一步&#xff0c;还没有考虑划分测试集、验证集、“缺失值、连续值”&#xff0c;预剪枝、后剪枝的部分&#xff0c;后面再补吧&#xff08;挖坑&#xff09; 第二节内容&#xff1a;验证集划分\k折交叉…

线性代数基础概念和在AI中的应用

基本概念 线性代数是数学的一个分支&#xff0c;专注于向量、向量空间&#xff08;也称为线性空间&#xff09;、线性变换和矩阵的研究。这些概念在数据科学、人工智能、工程学和物理学等多个领域都有广泛应用。以下是这些基本概念的详细解释和它们在数据处理和AI中的应用。 …

Jackson 2.x 系列【2】生成器 JsonGenerator

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 本系列Jackson 版本 2.17.0 源码地址&#xff1a;https://gitee.com/pearl-organization/study-seata-demo 文章目录 1. 前言2. 案例演示2.1 创建 JsonFactory2.2 创建 JsonGenerator2.3 写入操作2.4 查…

期权波动率是什么?怎么计算?

期权波动率 历史波动率&#xff1a;基于历史行情计算出来的历史波动率 我们现在站在现实时点B回顾过去&#xff0c;从A到B这段时间的历史行情我们是知道的&#xff0c;但是基于过去一段时间&#xff0c;标的价格的历史数据计算出来的波动率&#xff0c;就是历史波动率&#x…

分布式搜索引擎elasticsearch专栏二

上一篇的传送门&#xff1a; 分布式搜索引擎elasticsearch专栏一-CSDN博客 这一篇博文主要讲解elasticsearch的数据搜索功能。下面会分别使用DSL和RestClient实现搜索。 1.DSL查询文档 elasticsearch的查询依然是基于JSON风格的DSL来实现的。 1.1.DSL查询分类 Elasticsea…

Mac nvm install failed python: not found

报错 $>./configure --prefix/Users/xxx/.nvm/versions/node/v12.22.12 < ./configure: line 3: exec: python: not found nvm: install v12.22.12 failed!解决方法 到 App 文件夹&#xff0c;并且打开 cd /System/Applications/Utilities/ open .记得改完 Rosetta 之…

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单实战案例 之三 简单卡通漫画风格效果

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单实战案例 之三 简单卡通漫画风格效果 目录 Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单实战案例 之三 简单卡通漫画风格效果 一、简单介绍 二、简单卡通漫画风格效果实现原理 A、边缘蒙版的处理说明&#xff1…

FPGA控制AD7606_AD7606解读

目录 一、AD7606解读二、引脚说明三、时序图 一、AD7606解读 AD7606特点&#xff1a; 8通道同步采样模拟通道数为8分辨率&#xff1a;16bit&#xff0c;即最小采样的电压为5V/(2^16) 0,00007V&#xff0c;即数字量的1就代表模拟量的0,00007V&#xff0c;2代表0,00014V有效位数…

鸿蒙开发实战:【系统服务管理部件】

简介 samgr组件是OpenHarmony的核心组件&#xff0c;提供OpenHarmony系统服务启动、注册、查询等功能。 系统架构 图 1 系统服务管理系统架构图 目录 /foundation/systemabilitymgr ├── samgr │ ├── bundle.json # 部件描述及编译文件 │ ├── frameworks …

linux之centos7vmware虚拟机的安装

目录 一、下载合适的vmware和操作系统镜像安装文件 来自引用文章的软件下载本片文章使用的软件下载 二、根据教程进行安装 三、网络配置解说 四、配置网络 编辑虚拟机网络 对VMWARE虚拟机网络进行配置 设置虚拟机网络为NAT模式 设置自定义网络为 VMnet8(NAT模式) 编辑li…

[ C++ ] STL---list的使用指南

目录 list简介 list的常用接口 构造函数 赋值运算符重载 迭代器 容量相关接口 元素访问接口 修改相关接口 头插push_front() 头删pop_front() 尾插push_back() 尾删pop_back() insert() erase() list的迭代器失效 list简介 1. list是可以以O(1)的时间复杂度在任意…

机器人现有力控技术检索

文章目录 力控技术1 基本柔顺力控1.1 直接力控1.2 间接力控1.2.1 被动和主动柔顺控制1.2.2 混合力位控制1.2.3 阻抗&导纳力控1.2.3.1 原理1.2.3.2 区别和联系1.2.3.3 工程应用 1.2.4 阻抗力控1.2.5 导纳力控 2 先进力控2.1 自适应力控2.2 鲁棒力控2.3 学习力控 3 智能力控3…

【LabVIEW FPGA入门】使用FPGA实现串行同步接口(SSI)

SSI&#xff08;串行同步接口&#xff09;是连接绝对位置传感器和控制器的广泛应用的串行接口。SSI利用控制器发出一个时钟脉冲序列&#xff0c;初始化传感器的门限输出。 传感器不断更新位置数据&#xff0c;并传送到移位寄存器中。在每一个时钟脉冲序列之间&#xff…

HTML_CSS学习:超链接、列表、表格、表格常用属性

一、超链接_唤起指定应用 1.相关代码 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><title>超链接_唤起指定应用</title> </head> <body><a href"tel:10010">电话联…
最新文章