前言:作者本身也是一枚小白,初次搭建整体流程,用于记录了解学习,大佬勿喷。
环境:Centos 7 两台干净的虚拟机(可上外网,相互之间可ping通)
192.168.20.109 作为应用服务器部署java项目
192.168.20.112 作为nginx代理服务器
一、安装jdk(采用了一键安装(yum安装))
查看:
1.查看是否已安装JDK # yum list installed |grep java 2.卸载CentOS系统Java环境 # yum -y remove java-1.8.0-openjdk* *表示卸载所有openjdk相关文件输入 # yum -y remove tzdata-java.noarch 卸载tzdata-java 3.查看JDK软件包版本 # yum -y list java*或者使用# yum searchjava | grep -i --color JDK 查看JDK软件下载:
安装JDK # yum install java-1.8.0-openjdk*安装java1.8.0所有程序 yum install -y java-1.8.0-openjdk-devel.x86_64 注意:输入确认(y)直到控制台返回Complete安装成功 查看java版本信息 # java -version 输入javacjava命令后显示帮助信息就算是安装成功了 使用yum安装环境变量自动就配好了二、部署springboot项目(使用内置tomcat,打成jar包部署)
1、你的项目中执行maven命令生成jar包,打包好后可以在project结构中可以看到多了一个target包,打包好的jar包就在下面
2、将jar包部署到Linux服务器(上传到192.168.20.109上)
1.将jar包上传到Linux服务器上 a.执行 #sudo yum install lrzsz -y 命令 这个命令是将安装一个能下载、上传的软件 b.执行 #rz 命令 这是上传命令,执行之后,选择文件,就可以上传了 2.执行#nohup java -jar demo-0.0.1-SNAPSHOT.jar &命令 说明:java -jardemo-0.0.1-SNAPSHOT.jar 启动完项目后ctrl+c后服务会关闭 nohup java -jar demo-0.0.1-SNAPSHOT.jar & 启动完项目后ctrl+c后服务不会关闭 执行这个命令后台就可以启动这个jar包了3、访问(ip+端口)
启动完服务后发现服务器上可以访问,但其他pc上无法访问,经过百度发现可能由于防火墙原因。
CentOS升级到7之后,发现无法使用iptables控制Linuxs的端口,baidu之后发现Centos 7使用firewalld代替了原来的iptables。下面记录如何使用firewalld开放Linux端口:(作者使用的8080端口)
[root@centos7 ~]# firewall-cmd --zone=public --add-port=8080/tcp --permanent 重启防火墙: [root@centos7 ~]# firewall-cmd --reload然后再通过其他pc访问,访问正常了。
三、搭建配置nginx(192.168.20.112搭建)
1、搭建
要求用户拥有root权限
1、:添加Nginx存储库 要添加CentOS EPEL仓库,终端使用yum命令安装,直接复制执行: sudo yum -y install epel-release 2、:安装Nginx 现在Nginx存储库已经安装在您的服务器上,使用以下yum命令安装Nginx : sudo yum -y install nginx 3、:启动Nginx Nginx不会自动启动.要运行Nginx,请输入: sudo systemctl start nginx 如果您正在运行防火墙,请运行以下命令以允许HTTP和HTTPS通信:(如果防火墙关了,可直接跳过) 4、:设置防火墙 4.1、:允许http通信 sudo firewall-cmd --permanent --zone=public --add-service=http 4.2、:允许https通信 sudo firewall-cmd --permanent --zone=public --add-service=https 4.3、:重启防火墙 sudo firewall-cmd --reload 5、:测试 浏览器里键入你的主机地址如果看到这个页面,那么你的Web服务器现在已经正确安装了。
如果想在系统启动时启用Nginx。请输入以下命令:
sudo systemctl enable nginx恭喜你!!! Nginx现在已经成功安装并允许了!!
2、配置代理
server { listen 80; server_namelocalhost; #charset koi8-r; #access_loglogs/host.access.logmain; location / { proxy_pass:8080; } }然后重启nginx服务
# systemctl reload nginx3、访问
通过nginx服务器ip可以直接访问应用服务器器上服务。