生产环境服务器环境搭建+ 项目发布
生产环境服务器环境搭建
安装jdk
安装 openjdk-8-jdk 在 ubuntu-16.04 系统中通过以下命令:
- 1.sudo add-apt-repository ppa:jonathonf/openjdk
- 2.sudo apt-get update
- 3.sudo apt-get install openjdk-8-jdk
输入 java -version 查看是否安装正确,输出如下:
openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-8u191-b12-1~16.04.york0-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
创建发布目录,并给出相应的权限
- home/beeoz/sites (服务器和后台文件夹)
- home/beeoz/tmp (上传前端文件夹)
改变文件所有权chown
- myfile文件的所有权变为username:sudo chown username myfile
- 加入参数-R,work文件夹以及文件夹里的所有文件和子目录所有权都变为username:chown -R username /files/work
改变文件权限chmod
- sudo chmod 777 filename
- sudo chmod -R 754 director
- 4 可读,
2 可写,
1 可执行
0 无权限
三个数字的顺序分配代表用户、用户组、其他。第一个数字7表示用户的权限是读+写+执行(4+2+1=7),第二个数字5表示用户组的权限是读+可执行(4+0+1=5),第三个数字4表示其他人的权限是读(4+0+0=4)
安装tomcat服务器
- 1.安装tomcat8 不可安装在系统目录下,安装在用户目录下,系统目录下的操作命令与普通的不一致
- 2.更新 sudo apt-get update
- 3.下载 wget http://ftp.riken.jp/net/apache/tomcat/tomcat-8/v8.5.35/bin/apache-tomcat-8.5.35.tar.gz
-
- 解压到sites 文件夹中 tar -zxvf ~/apache-tomcat-8.0.33.tar.gz -C ~/sites
以下可以不用配置添加(改为生产环境)
- cp catalina.sh catalina.sh.date
- vi catalina.sh
- JAVA_OPTS=’-Dspring.profiles.active=prod -Xms512m -Xmx2048m -XX:PermSize=256M -XX:MaxNewSize=256m -* XX:MaxPermSize=256m’
注意,本次发布中将sites中的 tomcat-8.0.33 改名为 wms
配置 Nginx 服务转发 Tomcat
- sudo apt-get install nginx
- sudo vim /etc/nginx/sites-available/default
default
server {
listen 80 default_server;
listen [::]:80 default_server;
root /home/beeoz/sites/wms/webapps/wms;
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
# server_name _;
server_name vpshw1.sssssss.com;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
# try_files $uri $uri/ =404;
# proxy_pass http://114.116.22.35:8080/wms;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8080/wms/;
}
- sudo nginx -c /etc/nginx/nginx.conf 启动nginx
- 打开你的网址观看,注意防火墙和服务器安全组的端口
- nginx -s stop 停止命令
- nginx -s reload 重新下载配置文件
- sudo service nginx restart 重启
- service nginx
安装Postgres数据库服务
管理数据库
- sudo -u postgres psql
- postgres=# create database 库名;
- postgres=# create user 用户名;
- postgres=# alter user 用户名 password '密码';
- postgres=# alter user duye createrole createdb replication login;
- postgres=# \l 查看数据库
- postgres=# \du 查看用户和对应权限
项目发布
项目打包前准备工作
- 项目打包之前要先把数据连接信息改掉(举例说明:1.数据库名称改成wms,用户名改成beeoz,密码改成BeeOz2018),具体编辑位置如下所示:
application-prod.yml
spring:
devtools:
restart:
enabled: false
livereload:
enabled: false
datasource:
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:postgresql://localhost:5432/product
username: admin
password: admin2018
项目打包
-
- 后台项目打包命令(cmd进入根目录文件下):gradle --stacktrace -Pprod bootRepackage ;存放在APP项目中的libs文件下:打包文件名称是wms-0.0.1-SNAPSHOT.war
-
- 前端打包命令:cnpm run build ; 项目存放在dist文件夹中,先在资源目录中将两个问价压缩成一个文件dist.zip
服务器中操作命令
- 1.连接服务器:跳转到/sites/wms目录下
- 2.运行命令关闭服务器./bin/shutdown.sh
- 3.同目录下备份:mv webapps webapps.9.5(webapps.9.5是举例说明)
- 4.同目录下创建文件夹:mkdir webapps
- 5.跳转到新文件夹下:cd webapps
- 6.通过问价传输工具将本地后台项目放到该文件夹下
- 7.同目录下运行: mv wms- 0.0.1-SNAPSHOT.war wms.war 生成wms.war文件
- 8.返回上一目录,然后进入logs目录下去删除所有的log: rm *
- 9.返回wms目录下,启动服务器: ./bin/startup.sh
- 10.查看控制台日志: tail -f logs/catalina.out
如果要修改配置文件或相关文件的内容
修改配置文件
- 1.进去wms文件夹
- 2."./bin/shutdown.sh"
- 3.运行"vi ./WEB-INF/classes/config/application-prod.yml"
- 4.编辑并保存退出
- 5.重新启动:./bin/startup.sh
- 6.查看控制台:tail -f logs/catalina.out
前端发布项目
- 1.首先进入tmp空目录下
- 2.将dist.zip压缩文件复制到该目录下
- 3.运行命令解压缩:unzip dist.zip
- 4.进入dist: cd dist
- 5.运行命令查看:ls
- 6.运行命令复制到对应目录下: mv * ~/sites/wms/webapps/wms/
发布流程注意事项
- 服务器没启动前可以修改名称 mv irengine-wms-app-0.0.1-SNAPSHOT.war wms.war
- 可将dist中内容移到wms中之前要将原后台文件index.html文件名称另命名
- 发布新版本之前要将webapps中的原项目备份
- 如需要版本更新前可将logs备份;如不需要请将logs中日志清空再运行启动服务器命令
- 前台解压缩需要安装unzip工具 (安装unzip: sudo apt install unzip)
- 上传工具可选择 filezilla 等工具,上传之前需要确认改文件夹是否有权限接收