前言
本文记录下,测试人员如何搭建测试环境,以供后面自己方便找,大家可以借鉴下搭建测试环境需要安装的有: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.repo
sed -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
#关闭防火墙
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
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
linux下安装java
下载(jdk.8)-解压-添加环境变量
五、安装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
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重新加载一遍才会生效