Linux搭建测试环境(耗巨时制作全教程)

article/2025/11/7 10:39:49

文章目录

  • 前言
  • 一、安装dcoker
      • 1.1 安装yum工具
      • 1.2更新本地的镜像源
      • 1.3 安装docker
      • 1.4 启动docker
      • 1.5 配置镜像加速
  • 二、安装nginx
      • 2.1 按照nginx的依赖包,一键安装
      • 2.2 下载并解压安装包
      • 2.3 安装nginx
      • 2.4 启动nginx服务
      • 2.5 编辑nginx的配置文件nginx.conf
      • 2.6 重启nginx
      • 2.7 开放端口,允许外部访问nginx
      • 2.8 随后访问该ip:端口 即可看到nginx界面。
  • 三、安装mysql
      • 3.1在线安装mysql源
      • 3.2 安装mysql
        • 3.2.1使用yum进行安装
      • 3.3 启动mysql
      • 3.4 登录mysql
      • 3.4 修改mysql密码
      • 3.5 开启远程访问
      • 3.6修改默认编码
  • 四、安装 java
  • 五、安装redis
      • 5.1 下载redis安装包
      • 5.2 解压并安装redis
      • 5.3 安装gcc
      • 5.4 编译redis
      • 5.5 启动redis
      • 5.6 关闭redis
      • 5.7 修改redis密码
        • 方式1:通过命令生成密码,但是服务器重启后密码会失效
        • 方式2:修改配置问文件redis.conf 设置密码(永久有效)
      • 5.8 远程连接redis
  • 六、编辑后台配置,启动后端程序
      • 6.1 上传前端包,后端jar包到服务器
      • 6.2 配置nginx的配置文件
      • 6.3 访问项目的前端界面
      • 6.4 启动后端jar包
      • 6.5访问项目
  • 总结


前言

本文记录下,测试人员如何搭建测试环境,以供后面自己方便找,大家可以借鉴下搭建测试环境需要安装的有:nginx,redis,mysql,java,docker,保证这几个基本就可以用了,当然根据不同环境的需要,还需要安装一些类似ftp,libreoffice,onlyoffice 等文件处理;

教程中需要新环境,避免安装重复的软件产生冲突,你们也可自行清理已有软件,
我用的本地虚拟机来演示操作

  • 我把所有的安装教程都汇聚到了一起,所以文字可能很长,有需要的可以耐心看完;

一、安装dcoker

1.1 安装yum工具

yum install -y yum-utils \device-mapper-persistent-data \lvm2 --skip-broken

下图表示安装成功
在这里插入图片描述

1.2更新本地的镜像源

yum-config-manager \--add-repo \https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.reposed -i 's/download.docker.com/mirrors.aliyun.com\/docker-ce/g' /etc/yum.repos.d/docker-ce.repoyum makecache fast

下图表示安装成功
在这里插入图片描述

1.3 安装docker

yum install -y docker-ce

docker-ce为社区免费版本,安装时间较长,稍等片刻docker即可安装成功`
下图表示安装完成
在这里插入图片描述

1.4 启动docker

启动docker前 需要关闭防火墙

#关闭防火墙
systemctl stop firewalld
#查看是否关闭
systemctl status firewalld
#设置开机不自启防火墙
systemctl enable firewalld

启动docker,输入命令:

systemctl start docker

成功如下图在这里插入图片描述

1.5 配置镜像加速

docker官方镜像仓库网速较差,我们需要设置国内镜像服务:
参考阿里云的镜像加速文档:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

#创建docker文件夹
sudo mkdir -p /etc/docker
#进入docker文件目录
cd /etc/docker
#创建文件daemon.json 文件
touch dameon.json

#向dameon.json 中追加数据 命令如下:

sudo tee /etc/docker/daemon.json <<-'EOF'
{"registry-mirrors": ["https://akchsmlh.mirror.aliyuncs.com"]
}
EOF

最后重新加载文件,并重启docker即可

sudo systemctl daemon-reload
sudo systemctl restart docker

在这里插入图片描述
到这里docker安装基本结束了,
相关docker的其他知识点,可自行搜索学习如docker images
最后开启防火墙:systemctl start firewalld


二、安装nginx

2.1 按照nginx的依赖包,一键安装

yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

2.2 下载并解压安装包

//进入到local目录下创建nginx文件夹
cd /usr/local
//创建nginx文件
mkdir nginx
//进入nginx 文件
cd nginx
//下载tar包
wget http://nginx.org/download/nginx-1.13.7.tar.gz
// 解压nginx包
tar -xvf nginx-1.13.7.tar.gz

2.3 安装nginx

//进入nginx目录
cd /usr/local/nginx
//进入目录
cd nginx-1.13.7
//执行命令 考虑到后续安装ssl证书 添加两个模块
./configure --with-http_stub_status_module --with-http_ssl_module
//执行make命令
make
//执行make install命令
make install

中间一定要进入nginx的文件下再执行make 命令,不然就会提示make 操作无文件

2.4 启动nginx服务

 ​​​​​​​/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

2.5 编辑nginx的配置文件nginx.conf

# 打开配置文件
vi /usr/local/nginx/conf/nginx.conf

将server 下的 listen 端口号改成8089(随便挑个端口),因为可能apeache占用80端口,apeache端口尽量不要修改,我们选择修改nginx端口。

将localhost修改为你服务器的公网ip地址 如下图
在这里插入图片描述

记得wq保存退出

2.6 重启nginx

/usr/local/nginx/sbin/nginx -s reload

** 查看nginx是否启动

ps -ef | grep nginx

ps -ef | grep nginx

2.7 开放端口,允许外部访问nginx

若想使用外部主机访问nginx,需要关闭服务器防火墙或开放nginx服务端口,端口为上一步nginx.conf的配置端口

#新增开放端口,端口来源于你在nginx 配置的listen:端口,我这里配置的是5000
firewall-cmd --zone=public --add-port=5000/tcp --permanent#重启防火墙:
firewall-cmd --reload#查询端口号80 是否开启:
firewall-cmd --query-port=5000/tcp

在这里插入图片描述

2.8 随后访问该ip:端口 即可看到nginx界面。

在这里插入图片描述

#下面是nginx 的其他常用操作命令
#进入安装目录中,
命令: cd /usr/local/nginx/sbin#启动,关闭,重启,命令:
./nginx 启动./nginx -s stop 关闭./nginx -s reload 重启

到此nginx安装成功,后续还有其他需要在nginx.conf 中进行配置;

三、安装mysql

3.1在线安装mysql源

wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

3.2 安装mysql

rpm -ivh mysql57-community-release-el7-9.noarch.rpm

执行完成后会在/etc/yum.repos.d/目录下生成两个repo文件mysql-community.repo
mysql-community-source.repo

3.2.1使用yum进行安装

# 必须进入到 /etc/yum.repos.d/目录后再执行安装
cd /etc/yum.repos.d/
# 安装
yum install mysql-server
# 如果报错 RPG key 校验错误的话,选择不校验key即可,使用命令
yum install mysql-server --nogpgcheck

在这里插入图片描述

3.3 启动mysql

# 启动 MySQL
systemctl start mysqld
# 设置开机自启
systemctl enable mysqld

3.4 登录mysql

**获取临时密码

# 获取临时密码(在第一次登录时就是用这个密码)
grep 'temporary password' /var/log/mysqld.log
# 登录
mysql -u root -p
# 然后输入密码(刚刚获取的临时密码)

操作见下图
在这里插入图片描述

获取不到密码/或者登录不了的情况,处理如下

#01.获取不到临时密码的处理方法

# 删除原来安装过的mysql残留的数据
rm -rf /var/lib/mysql
# 启动mysql
systemctl start mysqld

#02 登录不了的处理方法,修改配置文件,跳过效验密码

# 打开配置文件
vim /etc/my.cnf
# 在文档内搜索mysqld定位到[mysqld]文本段
/mysqld
# 在[mysqld]后面任意一行添加
skip-grant-tables
#保存后重启mysql
systemctl restart mysqld

3.4 修改mysql密码

执行下面的命令时需登录mysql

# 修改密码,密码格式有一定的要求,
ALTER USER 'root'@'localhost' IDENTIFIED BY '1234qweQWE...';
# 刷新权限
flush privileges;
# 查看 mysql 的密码策略
SHOW VARIABLES LIKE 'validate_password%';

操作见下图
在这里插入图片描述
中间有报错记得,刷新权限

3.5 开启远程访问

# 连接服务器
mysql -u root -p
# 看当前所有数据
show databases;
# 进入mysql数据
use mysql;
# 查看mysql数据库中所有的表
show tables;
# 查看user表中的数据
select Host, User,Password from user;
# 修改user表中的Host(% 代表任意的客户端,可替换成具体IP地址)
update user set Host='%' where User='root';  
# 最后刷新一下
flush privileges;

3.6修改默认编码

vim /etc/my.cnf
# 进入文件后添加下面的配置即可
[mysqld]
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8

添加utf-8 ,记得保存退
在这里插入图片描述
重启mysql后,并进入mysql查看编码格式

#重启mysql
systemctl restart mysqld
#进入mysql
mysql -uroot -p
#查看编码格式
show variables like 'character%';

格式修改成功
在这里插入图片描述

四、安装 java

java安装参考的另外一篇文章,链接如下:

linux下安装java

五、安装redis

5.1 下载redis安装包

redis版本库地址如下:https://download.redis.io/releases/ 选择想要的版本下载即可
在这里插入图片描述

5.2 解压并安装redis

#创建redis目录
mkdir /usr/local/redis
#进入到redis 目录下
cd  /usr/local/redis
#通过 rz  命令上传下载的redis包,或者finashell直接拖动文件到redis目录下也可以
rz
#解压redis包
tar -zxvf  redis-7.0.7.tar.gz 

在这里插入图片描述

5.3 安装gcc

#安装gcc
yum -y install gcc#查看gcc 版本
gcc -version

在这里插入图片描述

5.4 编译redis

#进入redis包目录
cd /usr/local/redis/redis-7.0.7/
#执行make命令
make
#编译成功后,继续执行make install命令
make install

在这里插入图片描述
注意执行make命令时,一定要进入redis解压后的包目录里面执行,这样才不会提示 make 无执行文件

5.5 启动redis

#前台启动:在任何目录下执行redis-server
#后台启动:在任何目录下执行 
redis-server &
#启动redis服务时,指定配置文件:这种主要用于你改了配置文件的情况,比如你把默认端口号改了,你就用这个,正常也用这个
redis-server redis.conf &   

常用的就是:redis-server redis.conf &

5.6 关闭redis

redis-cli shutdown

还有一种就是通过redis的进程号 去关闭redis
ps -ef|grep redis
kill -9 xxx
在这里插入图片描述

5.7 修改redis密码

方式1:通过命令生成密码,但是服务器重启后密码会失效

#进入redis
redis-cli
#修改密码
config set requirepass 123456

requirepass: 后面就是你要修改的密码
在这里插入图片描述

方式2:修改配置问文件redis.conf 设置密码(永久有效)

1.进入到redis.conf 文件中,(也就在你安装redis包的路径下面)
如果是finashell连接的话,直接双击文件即可编辑, 你们也可在终端通过命令修改;

在这里插入图片描述
2.找到requirepass ,取消注释,添加密码后保存退出
在这里插入图片描述
在这里插入图片描述
如果是finashell,双击文件进行的编辑,记得ctrl+s 保存哈

3.重启服务器,配置即可生效(重启后记得启动redis)

5.8 远程连接redis

远程连接时,如果防火墙开启,就需要防火墙开放端口:6379(redis默认端口),并重新加载防火墙
firewall-cmd --permanent --add-port=6379/tcp
firewall-cmd --reload

方式1:服务器本机连接

#进入redis
redis-cli
#验证密码
auth pass_123456

在这里插入图片描述
方式2:Anoter Redis Desk mannger 工具连接
在这里插入图片描述

很多人通过anotherdesk连接后,可能都会提示连接被拒绝,这个时候修改下redis.conf 配置文件就行,
命令如下:
cd /usr/local/redis/redis-7.0.5
vim redis.conf
在这里插入图片描述

注释掉#bind 127.0.0.1 -::1 (大概也就是不限制固定ip访问吧,或者127开头的ip访问)

在这里插入图片描述

修改保存后,一定要重启redis服务, 先杀死redis进程,再重启;
然后再去连接就不会提示被拒绝了;
在这里插入图片描述

六、编辑后台配置,启动后端程序

到这里我们前戏都已经做足了, 下面开始上台表演了

首先要先编辑下后端jar包中的yml配置文件(正常yml文件的配置都是开发配好了直接用,)
修改相应服务ip,端口; redis,mysql 的账号密码等;
在这里插入图片描述
编辑后,记得保存,还有其他的yml配置,根据各自需要进行调整;

6.1 上传前端包,后端jar包到服务器

#在home下创建server目录存放后端包
mkdir /home/server
# rz  上传后端包到server目录下,或者直接拖动上传
rz 
#再建一个文件存放前端包
mkdir /home/server/ybxa
#进入ybxa文件夹下
cd /home/server/ybxa
# rz  上传前端包到ybxa目录下,或者直接拖动上传

在这里插入图片描述

在这里插入图片描述

6.2 配置nginx的配置文件

编辑配置文件:
vim /usr/local/nginx/conf/nginx.conf
1.修改root 后的html 改成前端包的存放路径 /home/server/ybxa
2.并在下方添加一段数据,这是后端所需的映射
在这里插入图片描述

数据来源如下

location ^~ /zwzc/ {proxy_redirect     off;proxy_set_header   Host             $host;proxy_set_header   X-Real-IP        $remote_addr;proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;proxy_http_version 1.1;proxy_set_header Upgrade $http_upgrade;proxy_set_header Connection "upgrade";proxy_pass http://127.0.0.1:8080/;}

完成配置后,记得重启nginx

/usr/local/nginx/sbin/nginx -s reload
(如果提示报错,显示nginx.pid faild) 这就表示nginx就没有运行,重启时在路径下找不到nginx的pid进程号,就需要手动启动nginx
​​​​​​​/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

6.3 访问项目的前端界面

输入ip:端口 (nginx里面配置的端口) 到浏览器即可访问;目前只有前端,后端还未启动
192.168.159.133:5000

在这里插入图片描述

6.4 启动后端jar包

#进入后端包jar的目录下
cd /home/server
#在根目录下窗口一个logs文件
mkdir /logs
#输入启动命令
nohup java -jar -Xms1024m -Xmx2048m -XX:PermSize=1024M -XX:MaxPermSize=2048M 20221209165434.jar  --spring.profiles.active=dev > /logs/catalina.out 2>&1 &
#启动过程有一段时间,耐心等待或者可以看cpu的进度也可以,启动后端包过程中cpu占比很大,启动完了之后就降下来了

启动命令详解释

#查看java启动成功与否
ps -aux | grep java
在这里插入图片描述
其他命令:
杀死java:
kill -9 80940
kill-15 80940 (80940就是java的进程号,)

6.5访问项目

输入相应的ip:端口 就可以正常使用项目了;

这个时候,数据库还没得数据,记得导入数据库

总结

走到这里,搭建环境就圆满结束了,过程中搭建了:nginx,redis,mysql,java,docker;
其实还不完整,但整体已经有了,其他的根据自己需要进行搭建

在搭建过程中,有时候访问不了,连接被拒绝等需要考虑防火墙问题,防火墙需要开放mysql的3306端口,redis的6379端口
以及自行配置的nginx的开放端口5000 等等;
相应命令如下:
firewall-cmd --list-all 查看已所有已经开放的端口列表
firewall-cmd --query-port=8080/tcp 是否开启
firewall-cmd --permanent --add-port=80/tcp 开启80端口
firewall-cmd --permanent --remove-port=8080/tcp 移除端口
添加端口后,必须用命令firewall-cmd --reload重新加载一遍才会生效

另外环境相关的 frp穿透,私钥连接等可以看我发的其他文章

注:文章部分教程参考其他博主链接如下
环境搭建的配置参考链接
1.安装docker
https://blog.csdn.net/m0_59196543/article/details/124749175
2.安装nginx
https://blog.csdn.net/t8116189520/article/details/81909574
3.安装mysql
https://www.cnblogs.com/2393920029-qq/p/16310443.html
4.安装java
https://blog.csdn.net/weixin_55944621/article/details/127996632
5.安装redis
https://blog.csdn.net/m0_63270506/article/details/125028667


http://chatgpt.dhexx.cn/article/RMtgYeJ3.shtml

相关文章

如何搭建一个好的测试环境

测试环境在软件项目中的重要性不言而喻&#xff0c;测试环境独立及是否稳定直接影响了项目的进度。 测试环境&#xff08;Testing environment&#xff09;是指为了完成软件测试工作所必需的计算机硬件、软件、网络设备、历史数据的总称。简单的说&#xff0c;经过良好规划和管…

软件测试测试环境搭建很难?一天学会这份测试环境搭建教程

如何搭建测试环境&#xff1f;这既是一道高频面试题&#xff0c;又是困扰很多小伙伴的难题。因为你在网上找到的大多数教程&#xff0c;乃至在一些培训机构的课程&#xff0c;都不会有详细的说明。 你能找到的大多数项目&#xff0c;是在本机电脑环境搭建环境&#xff0c;或是…

测试环境的搭建

JDK的搭建 1.下载jdk1.8&#xff0c;选择jdk-8u202-windows-x64&#xff08;JDK是java软件开发包(Java Development Kit)的简称&#xff0c;要想开发java程序就必须安装JDK。没有JDK的话&#xff0c;无法编译运行Java程序。&#xff09; Index of java-local/jdk/8u202-b08 (…

【Python】Matplotlib画图(四)——折线图

环境 Python Mac OS 代码 # coding:utf-8""" Author: roguesir Date: 2017/8/30 GitHub: https://roguesir.github.com Blog: http://blog.csdn.net/roguesir """import numpy as np import matplotlib.pyplot as plt x1[20,33,51,79,101,1…

Python绘制简单的折线图,附详细代码和注释

本文利用Python绘制简单的折线图&#xff0c;需使用Matplotlib安装包&#xff0c;该安装包的安装可参考&#xff1a; Python中安装Matplotlib数学绘图库_Xx_Studying的博客-CSDN博客 绘制简单的折线图详细的python代码&#xff1a; import matplotlib.pyplot as plt # 导入…

python绘制双折线图

#每天进步一点点 昨天写了一个绘制折线图的代码&#xff1a; import numpy as np import matplotlib.pyplot as plt from pylab import * #导入数据 data {loss: [0.2183203399181366, 0.18074245750904083, 0.17447859048843384, 0.16980455815792084, 0.16634176671504974,…

python用matplotlib画折线图

折线图&#xff1a; import matplotlib.pyplot as plt y1[10,13,5,40,30,60,70,12,55,25] x1range(0,10) x2range(0,10) y2[5,8,0,30,20,40,50,10,40,15] plt.plot(x1,y1,labelFrist line,linewidth3,colorr,markero, markerfacecolorblue,markersize12) plt.plot(x2,y…

python画折线图

最近要画论文中的图&#xff0c;参考了一下之前的论文里面的图&#xff0c;觉得人家画的不错&#xff08;见下图&#xff09;&#xff0c;想画一下&#xff0c;但是一直也没找到合适的画法&#xff0c;最近潜心研究&#xff0c;终于解决了这个问题&#xff0c;写一下&#xff0…

Python绘制折线图、散点图

Python绘图需要下载安装matplotlib模块&#xff0c;它是一个数学绘图库&#xff0c;我们将使用它来制作简单的图表&#xff0c;如折线图和散点图。关于matplotlib模块的下载安装预配置将在后面具体介绍。 &#xff08;一&#xff09;绘制折线图 首先&#xff0c;我们先绘制一…

【python画图】使用python画折线图、柱状图

目录 一、读取数据 &#xff08;1)文件中读取数据 &#xff08;2&#xff09;代码中直接读取 二、画图 折线图 要想指定横纵轴的刻度范围或指定相应取值&#xff1a;(或者X轴不规则增长&#xff09; 柱状图 其实现在有很多在线网站就可以直接导入数据画图&#xff0c;不…

Python绘制折线图or平滑曲线图(2D)

一、折线图 Python使用matplotlib进行2D绘图的主要思想就是传入x坐标数组和y坐标数组&#xff0c;然后调用plot函数。其中x数组的长度和y坐标数组的长度要必须一致。只要二者的数据有了&#xff0c;那么画一个折线图就是非常简单的事情。例如 代码 import numpy as np import …

Python数据可视化的例子——折线图(line)

对于时间序列数据而言&#xff0c;一般都会使用折线图反映数据背后的趋势。通常折线图的横坐标指代日期数据&#xff0c;纵坐标代表某个数值型变量&#xff0c;当然还可以使用第三个离散变量对折线图进行分组处理。接下来仅使用Python中的matplotlib模块和pandas模块实现折线图…

使用python绘制简单折线图

首先&#xff0c;打开电脑命令行输入&#xff1a; pip install matplotlib 对python中matplotlib进行下载。 构建python文件&#xff0c;使用import函数引入两个类&#xff0c;使我们可以绘制图像并对图像样式进行改变使其更加明显美观。 值得一提的是&#xff0c;matplotl…

Python Matplotlib 折线图 线条颜色和样式

Python Matplotlib 折线图 线条颜色和样式 折线颜色折线形状数据点&#xff08;节点&#xff09;形状坐标示例 折线颜色 折线形状 ‘-’ &#xff1a;实线 ‘-.’ &#xff1a;实虚线 ‘–’&#xff1a;虚线 ‘:’ &#xff1a;点虚线 数据点&#xff08;节点&#xff09;形…

【Python】matplotlib之折线图的各种样式和画法

上述图的完整代码如下&#xff1a; from numpy import * import numpy as np import pandas as pd import matplotlib.pyplot as plt import pylab as pl from mpl_toolkits.axes_grid1.inset_locator import inset_axesy1 [0.92787363, 0.92436059, 0.92380563, 0.92169979,…

Python:如何使用matplotlib绘制折线图

前言&#xff1a; 我的python学习也告一段落了。不过有些&#xff0c;方法还是打算总结一下和大家分享。我整理了使用matplotlib绘制折线图的一般步骤&#xff0c;按照这个步骤走绘制折线图一般都没啥问题。其实用matplotlib库绘制折线图的过程&#xff0c;其实就是类似于数学上…

python画多条折线图(简介)

目录 一、打开python 二、代码 三、运行结果 一、打开python 新建一个pathon项目。 二、代码 # -*- coding: utf-8 -*- import matplotlib.pyplot as pltnames [1, 2, 3, 4, 5, 6] x range(len(names)) plt.rcParams[font.sans-serif] [SimHei] # 显示汉字y_1 [2, 3…

Python可视化——绘制折线图

绘制折线图 plot() &#xff08;1&#xff09;准备工作 绘制可视化图形&#xff0c;将会使用到Matplotlib库中的pyplot包。 Matplotlib是Python的绘图库&#xff0c;其中的pyplot包封装了很多画图的函数。 Matplotlib.pyplot 包含一系列类似 MATLAB 中绘图函数的相关函数。 因…

【Python】Matplotlib绘制折线图

文章目录 1.Matplotlib画图简单实现2.折线图2.1绘制折线图2.2设置线的格式2.3设置折点2.4.图片的保存和导出2.5设置刻度2.6显示中文2.7实例&#xff1a;每分钟心脏跳动图 3.拓展3..1一图多线3.2一图多个坐标子图3.3坐标轴设置 1.Matplotlib画图简单实现 Matplotlib在一个绘制2D…

【python】画折线图

文章目录 一个简单的折线图同一张图上显示多条数据给这个折线图中的点加数据标签 一个简单的折线图 画折线图至少需要2个列表&#xff1a;横坐标列表和纵坐标列表&#xff0c;两个坐标的位置一一对应。 from pylab import * mpl.rcParams[font.sans-serif] [SimHei] # 添加…