微服务 前后端分离部署环境

微服务 前后端分离部署环境

一、环境

后端: jdk1.8

windows下直接安装jdk1.8,点击下一步即可

linux下安装jdk百度可知

前端:nginx

windows下下载nginx服务压缩包即可运行

linux下安装nginx百度可知

二、打包

后端:

在项目的目录下可以在idea中点击package进行打包,也可以在项目文件目录下 mvn package

如果是依赖与其他模块的项目,需要先打包其他模块到本地仓库中(mvn install),才能将项目打包成功

注意:如果项目更新了依赖模块需将本地仓库中的jar删除后重新打包

前端:

在项目的目录下可以在idea中点击build进行打包,也可以在项目文件目录下 npm run build

三、部署

后端 部署后运行

windows环境下:

java -jar demo-0.0.1-SNAPSHOT.jar

linux环境下(代表在后台运行):

nohup java -jar demo-0.0.1-SNAPSHOT.jar &

前端部署运行

将打包后的单页面应用放入nginx里面的html文件夹下即可,启动nginx.exe

由于代理问题

nginx必须在配置文件中设置代理

在nginx目录下的conf下的nginx.conf

在server下面写:

配置完nginx.conf需要重启

    location /api {
        add_header 'Access-Control-Allow-Origin' '*';
        proxy_pass http://localhost:8089/api;
    } 

四、java将配置文件打包在外面方便更改

1、先看项目结构(需要更改的文件)

微服务 前后端分离部署环境_第1张图片

2、POM文件添加build


    
        
            org.springframework.boot
            spring-boot-maven-plugin
        
        
            org.apache.maven.plugins
            maven-jar-plugin
            
                
                    
                        true
                        
                        springboot启动类
                    
                
            
        
        
            org.apache.maven.plugins
            maven-assembly-plugin
            
            
                
                        
                    src/main/resources/config/package.xml
                
            
            
                
                    make-assembly
                    package
                    
                        single
                    
                
            
        
​
    

3、添加package.xml



    package
    
        zip
    
    true
    
        
        
            ${project.basedir}
            /
            
                
                *.bat
                *.md
                
                
                
                
            
        
​
        
            ${project.basedir}/src/main/resources
            /
            
                config/*.xml
                config/*.properties
                *.properties
            
        
​
        
        
            ${project.build.directory}
            /
            
                *.jar
            
        
    

4、添加快速启动的windows脚本 start.bat

java -jar -Dspring.config.location=%cd%\application.properties  %cd%\demo-0.0.1-SNAPSHOT.jar 

5、打包后的项目目录

微服务 前后端分离部署环境_第2张图片

五、跳过单元测试

-DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。

-Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类。

不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。

一 使用maven.test.skip,不但跳过单元测试的运行,也跳过测试代码的编译。

mvn package -Dmaven.test.skip=true  


也可以在pom.xml文件中修改


  
    org.apache.maven.plugins  
    maven-surefire-plugin  
    2.5  
      
        true  
      
 



二 使用 mvn package -DskipTests 跳过单元测试,但是会继续编译;如果没时间修改单元测试的bug,或者单元测试编译错误。使用上面的,不要用这个

  
    org.apache.maven.plugins  
    maven-surefire-plugin  
    2.5  
      
        true  
      
 


跳过文档

-Dmaven.javadoc.skip=true



 

 

docker打包

docker build -t test .

dokcer运行

docker run -p 8761:8080 test

docker run -d -p 8761:8080 test

-d是后台运行

Docker常用命令

docker images 查看仓库所有的镜像

docker ps 查看执行的容器

docker ps -a 查看所有容器

docker stop id id是该容器的IMAGE ID 停止容器运行

docker rm id id是该容器的IMAGE ID 删除容器

docker rmi id id是该仓库的id 删除仓库镜像

你可能感兴趣的:(java,微服务)