linux搭建测试环境详细过程

前言


本文记录下,测试人员如何搭建测试环境,以供后面自己方便找,大家可以借鉴下搭建测试环境需要安装的有: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.repo

yum 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重新加载一遍才会生效

相关推荐

  1. kafka测试环境

    2024-02-22 03:46:01       26 阅读
  2. Linux 服务器环境

    2024-02-22 03:46:01       19 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-22 03:46:01       14 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-22 03:46:01       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-22 03:46:01       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-22 03:46:01       18 阅读

热门阅读

  1. html中如何给input输入框这个一个默认值

    2024-02-22 03:46:01       28 阅读
  2. 【接口设计】注册登录接口开发设计中注意细节

    2024-02-22 03:46:01       26 阅读
  3. pytroch笔记

    2024-02-22 03:46:01       31 阅读
  4. 力扣-217. 存在重复元素

    2024-02-22 03:46:01       23 阅读
  5. Rust语言之异步写文件

    2024-02-22 03:46:01       27 阅读
  6. 炫技亮点 优雅处理数据流程 过滤器模式

    2024-02-22 03:46:01       27 阅读
  7. 类和对象 下(再谈构造函数 static成员 友元)

    2024-02-22 03:46:01       30 阅读
  8. 【Linux 内核源码分析】内存管理——Slab 分配器

    2024-02-22 03:46:01       28 阅读