Linux部署工程
一.linux部署SpringBoot工程 jar包的方式
1.修改springboot工程pom.xml文件
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
2.使用maven命令进行打包
3.打包生成jar包
4.获取到打成的jar包后,将该jar包传输到Linux服务器
1.上传jar包
使用root用户登录
#创建文件夹
mkdir opt/work/project
#进入该文件夹
cd /opt/work/project
#使用rz 命令进行上传
rz
2.启动springboot工程
Linux 运行jar包命令如下:
方式一:
java -jar XXX.jar
特点:当前ssh窗口被锁定,可按CTRL + C打断程序运行,或直接关闭窗口,程序退出
那如何让窗口不锁定?
方式二
java -jar XXX.jar &
&代表在后台运行。
特定:当前ssh窗口不被锁定,但是当窗口关闭时,程序中止运行。
继续改进,如何让窗口关闭时,程序仍然运行?
方式三
nohup java -jar XXX.jar &
nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行
当用 nohup 命令执行作业时,缺省情况下该作业的所有输出被重定向到nohup.out的文件中,除非另外指定了输出文件。
方式四
nohup java -jar XXX.jar >temp.txt &
解释下 >temp.txt
command >out.file
command >out.file是将command的输出重定向到out.file文件,即输出内容不打印到屏幕上,而是输出到out.file文件中。
可通过jobs命令查看后台运行任务
jobs
那么就会列出所有后台执行的作业,并且每个作业前面都有个编号。
如果想将某个作业调回前台控制,只需要 fg + 编号即可。
二.linux部署SpringBoot工程war包的方式
1.去除springboot的内置tomcat
<packaging>war</packaging> <!--标注为使用maven打成war包-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<!-- 移除嵌入式tomcat插件 -->
<exclusions>
<exclusion>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
</exclusions>
</dependency>
2.在springboot的启动类中继承SpringBootServletInitializer实现configure
@SpringBootApplication
public class Application extends SpringBootServletInitializer {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
return builder.sources(Application.class);
}
}
3.将打好的war包部署到linux下的tomcat中,启动tomcat
注意:
使用外部Tomcat部署访问的时候,application.properties(或者application.yml)中配置的
server.port=
server.servlet.context-path=
将失效,请使用tomcat的端口,tomcat,webapps下项目名进行访问。
为了防止应用上下文所导致的项目访问资源加载不到的问题,建议pom.xml文件中标签下添加标签:
<build>
<!-- 应与application.properties(或application.yml)中context-path保持一致 -->
<finalName>war包名称</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
linux部署Vue前端工程
linux部署vue前端工程有两种方式,第一种为tomcat第二种为nginx,一下主要为linux部署的方式发
1.前期工作,使用npm命令进行前端工程打包,注意 前端的proxyTable不能在生产环境中使用,所以需要删除
2.修改结束后需要使用npm命令进行打包
3.打包成功后会生成文件dist
4.将dist文件压缩为zip文件上传到linux下
#切换到目录
cd /opt/work/project
#创建一个文件夹
mkdir dist
#上传到该文件夹下
rz
#进行解压,如果unzip命令不识别,需安装unzip yum install unzip
unzip dist.zip
5.安装nginx来进行转发
5.1 安装编译工具及库文件
yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel
5.2 首先要安装 PCRE
wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz
5.3 解压安装包:
tar zxvf pcre-8.35.tar.gz
5.4 进入安装包目录
cd pcre-8.35
5.5 编译安装
./configure
make && make install
5.6 查看版本
pcre-config --version
安装nginx
5.7 获取安装包
wget http://nginx.org/download/nginx-1.9.9.tar.gz
5.8 解压
tar zxvf nginx-1.9.9.tar.gz
5.9 进入安装目录编译安装
cd nginx-1.9.9
./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35
make
make install
到此,nginx安装完成。
6.nginx安装完成后,需要更换nginx的配置文件
#进入nginx的安装目录
cd /usr/local/webserver/nginx/conf
#进行修改文件
vi nginx.conf
#添加新的虚拟主机
server{
listen 8081; #自定义你服务器的端口号
server_name 120.27.61.37; #自定义你的IP或者域名,localhost:127.0.0.1 本地的IP
#charset koi8-r;
#access_log logs/host.access.log main;
#root /opt/work/project/dist; #dist目录指向你本地的工作目录,相当重要
#index index.html index.htm; #打开默认文件为index.html
location / {
root /opt/work/project/dist/;
try_files $uri $uri/ /index.html;
}
# 对请求进行代理
location /api {
proxy_pass http://120.27.61.37:8082/; #你的后端工程的ip和端口号
add_header Content-Type "text/plain;charset=utf-8";
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Credentials' 'true';
add_header 'Access-Control-Allow-Methods' 'GET, POST';
}
}
7.修改并保存完成后 进入sbin目录
#返回上一级
cd ..
#进入sbin目录
cd /sbin
#启动nginx
./nginx
8.使用浏览器打开你的ip以及端口号,可以成功的看见你的前端工程页面
rol-Allow-Origin’ ‘*’;
add_header ‘Access-Control-Allow-Credentials’ ‘true’;
add_header ‘Access-Control-Allow-Methods’ ‘GET, POST’;
}
}
#### 7.修改并保存完成后 进入sbin目录
#返回上一级
cd …
#进入sbin目录
cd /sbin
#启动nginx
./nginx
#### 8.使用浏览器打开你的ip以及端口号,可以成功的看见你的前端工程页面