CentOS 7.9 常用环境配置


文章目录

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


环境准备

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

sudo uname -rsudo 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.confenabled = 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.0port = 3306sql_mode="STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION"default_storage_engine=innodbinnodb_buffer_pool_size=1000Minnodb_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.mzph.cn/news/757057.shtml

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

相关文章

SpringBoot通过拦截器和JWT令牌实现登录验证

1. Jwt 工具类 引入依赖 <dependency><groupId>com.auth0</groupId><artifactId>java-jwt</artifactId><version>4.4.0</version> </dependency>JwtUtil 类包含了两个静态方法&#xff1a;generateToken() 用于生成 JWT&…

图书馆管理系统 2.后台系统管理模块编写

后端 1.实体类编写 用户实体类 package jkw.pojo;import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import lombok.Data;import java.io.Serializable; import java.util.List;/*** 用户*/ Data public class …

Redis高频八股文与解决策略

什么是Redis&#xff1f; Redis是一个高性能的非关系型的键值对数据库&#xff0c;使用C编写实现的。与传统的数据库不同的是Redis是存在内存中的&#xff0c;所以读写速度非常快&#xff0c;每秒可以处理超过10万次的读写操作&#xff0c;这也是Redis常常被用作缓存的原因。 什…

Unity Toggle处理状态变化事件

Toggle处理状态变化事件&#xff0c;有两个方法。 法一、通过Inspector面板设置 实现步骤&#xff1a; 在Inspector面板中找到Toggle组件的"On Value Changed"事件。单击""按钮添加一个新的监听器。拖动一个目标对象到"None (Object)"字段&am…

研究人员发现 OpenAI ChatGPT、Google Gemini 的漏洞

自 OpenAI 推出 ChatGPT 以来&#xff0c;生成式 AI 聊天机器人的数量及其在企业中的采用率在一年多时间里呈爆炸式增长&#xff0c;但网络安全专业人士的担忧也随之增加&#xff0c;他们不仅担心威胁组织对新兴技术的使用&#xff0c;还担心大型网络的安全性及模型&#xff08…

点云预处理——滤波、旋转和平移等处理

目录 一、环境配置 二、步骤 一、环境配置 安装好ubuntu系统和ROS环境 操作系统: Ubuntu 20.04 wget http://fishros.com/install -O fishros && . fishros 二、步骤 打开终端&#xff0c;并在终端命令行输入以下指令: git clone https://gitee.com/wccworld/…

MNN Session 创建执行器(六)

系列文章目录 MNN createFromBuffer&#xff08;一&#xff09; MNN createRuntime&#xff08;二&#xff09; MNN createSession 之 Schedule&#xff08;三&#xff09; MNN createSession 之创建流水线后端&#xff08;四&#xff09; MNN Session::resize 之流水线编码&am…

MFC界面美化第三篇----自绘按钮(重绘按钮)

1.前言 最近发现读者对我的mfc美化的专栏比较感兴趣&#xff0c;因此在这里进行续写&#xff0c;这里我会计划写几个连续的篇章&#xff0c;包括对MFC按钮的美化&#xff0c;菜单栏的美化&#xff0c;标题栏的美化&#xff0c;list列表的美化&#xff0c;直到最后形成一个完整…

中小企业Java/SpringBoot体系技术抽象沉淀

目录 1. 起因 2. 参考 3.总结&#xff1a; 1. 起因 企业开发的过程中会逐渐沉淀自己的一些公共starter&方法等&#xff1b;建议可以整合开源项目与自身沉淀的一些做一个统一的parent包 2. 参考 内容参考内容框架包&#xff0c;基础core包&#xff0c;统一返回&#x…

详解Redis的持久化RDB和AOF

Redis的持久化是将内存中的数据同步到硬盘的过程 具体来说&#xff0c;Redis支持两种主要的持久化方式&#xff1a;RDB 和 AOF。 RDB&#xff08;Redis Database&#xff09; 简介 默认持久化方式 RDB会将内存中的数据快照保存到磁盘上的一个二进制文件中。这个文件包含了…

创建React+Ts项目

1.创建脚手架 create-react-app 项目名称 --template typescript 2.配置路径别名 配置路径别名---React_h5 路径别名设置-CSDN博客 3.添加组件库 npm i antd --save App.tsx 文件 引用 ant design react import React from react;import { Button } from antd;function …

NLP---Bert分词

目录&#xff1a; Q&#xff1a;bert分词步骤1&#xff1a;构建N * N 的相关性矩阵&#xff0c;计算相邻两个字的相关性&#xff0c;低的话&#xff08;<阈值&#xff09;就切割。2&#xff1a;将A词进行mask计算出A的embedding&#xff0c;然后将AB两个词一起mask&#xff…

4.线性数据结构——3.栈及例题

标准库的栈 定义&#xff1a;stack<typename> myStack;大小&#xff1a;size()压栈&#xff1a;push()弹栈&#xff1a;pop()栈顶&#xff1a;top()判空&#xff1a;empty() #include <cstdio> #include <string> #include <map> #include <algor…

视觉信息处理和FPGA实现第5次作业-Matlab实现图像逆时针旋转90度

一、Matlab2022a安装 链接&#xff1a;https://pan.quark.cn/s/6e177bc7c11d 提取码&#xff1a;dKNN 二、Matlab使用 2.1 新建一个脚本文件&#xff08;.m文件&#xff09; 2.2 另存为到便于归档的地方 考虑到.m文件如果不是全英文路径&#xff0c;也有可能会出问题&#…

Linux 服务升级:MySQL 主从(半同步复制) 平滑升级

目录 一、实验 1.环境 2.Mysql-shell 检查工具兼容性 3.逻辑备份MySQL数据 4.备份MySQL 数据目录、安装目录、配置文件 5.MySQL 升级 6.master节点 使用systemd管理mysql8 7. slave1 节点升级 8. slave2 节点升级 9.半同步设置 二、问题 1.mysqldump备份报错 2.Inn…

Docker部署dart-frog服务

参考&#xff1a; dart-frog官网&#xff1a;https://dartfrog.vgv.dev/docs/overview 使用 Dart Frog 体验 Dart 服务端开发 - 简书 打包项目 按照demo新增项目后&#xff0c;执行&#xff1a; dart_frog build 等待build后生成 build 文件夹&#xff0c;这个文件夹就是需要…

【爬虫】专栏文章索引

为了方便 快速定位 和 便于文章间的相互引用等 作为一个快速准确的导航工具 爬虫 目录&#xff1a; &#xff08;一&#xff09;web自动化和接口自动化 &#xff08;二&#xff09;实战-爬取Boss直聘信息数据

详细分析Python模块中的雪花算法(附模板)

目录 前言1. 基本知识2. 模板3. Demo 前言 分布式ID的生成推荐阅读&#xff1a;分布式ID生成方法的超详细分析&#xff08;全&#xff09; 1. 基本知识 Snowflake 算法是一种用于生成全局唯一 ID 的分布式算法&#xff0c;最初由 Twitter 设计并开源 它被设计用于解决分布式…

使用甘特图实现高效时间规划

甘特图虽然看似简单,却蕴含着规划时间的奥秘。它将复杂的工序分解成逻辑严密的任务链条,每个短小的条形图块都清晰地道出一个任务的起始、持续和终止。就像指挥家挥舞手中的棒,每个动作都精确拍着节奏,确保各个乐手分工合作、行云流水。择一个好用的甘特图制作工具,会让你事半功…

C#,图论与图算法,有向图(Graph)之环(Cycle)判断的颜色算法与源代码

1 检查该图是否包含循环 给定一个有向图,检查该图是否包含循环。如果给定的图形至少包含一个循环,则函数应返回true,否则返回false。 方法:深度优先遍历可用于检测图中的循环。连接图的DFS生成树。只有当图中存在后缘时,图中才存在循环。后边是从节点到自身(自循环)或…