常规部署

前端部署

#打包测试环境
npm run build:stage

#打包生产环境
npm run build:prod

构建成功后,会在当前目录内生成dist目录,将该目录部署到Nginx内,即完成部署。Nginx配置通常如下:

    server {
        listen 80;
        #指定根目录
        root /so-fast-web-path/dist/;
        #访问地址
        location / {
            try_files $uri $uri/ /index.html;
        }
                # API网关反向代理
        location ^~/stage-api/ {
            proxy_pass http://localhost:9000/;
        }

                // 文件、图片预览配置
        location ^~/avatar/ {
            root /mnt/sofast/;
        }
        location ^~/images/ {
            root /mnt/sofast/;
        }
        location ^~/files/ {
            root /mnt/sofast/;
        }
    }

如果要启用https,请参照一下配置

server {

        listen 8285 ssl;
        server_name 域名;
        ssl_certificate  cert/证书.pem;
        ssl_certificate_key cert/证书.key;
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on;

        root /opt/so-fast-cloud/jenkins/so-fast-web-cloud/;

        location / {
            try_files $uri $uri/ /index.html;
        }

        location ^~/stage-api/ {
            proxy_pass http://localhost:9000/;
        }
        #。。。其他配置。。。

        # http访问时,会强制跳转到https
        error_page 497 https://$host:8285$uri?$args;
    }

后端部署

1.mysql数据库运行确认

请确保已经安装并启动mysql数据库,并导入建库脚本文件。

脚本文件位置:db目录

2.redis运行确认

请确保已经安装并启动redis服务。

3.nacos运行确认

从官网下载1.4.2版nacos-service,修改配置文件,连接到运行的mysql数据库,启动并确认http://localhost:8848/nacos 是否可以正常访问。

4.配置中心导入

将nacos目录下的配置文件导入到nacos server中。并修改mysql、redis等连接地址。

如果有文件上传,需要修改对应的上传目录地址,并设置必要目录文件权限

其他配置不建议修改,系统调优时,可以择机调整部分参数进行系统优化。

5.启动微服务

# 编译打包测试环境
mvn clean package -DskipTests -P test
# 编译打包生产环境
#mvn clean package -DskipTests -P prod

#逐个启动服务
nohup java  -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8 -Xmx512m -Xms256m -jar so-fast-xxx.jar >> /dev/null 2>&1 &

##可以使用shell脚本批量启动服务

推荐默认使用jar包运行

如果想要使用tomcat进行war部署,需要进行打包修改:

1.将pom.xml文件的packaging从jar修改为war

2.将springboot内置的tomcat容器排除

    <exclusions>
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
        </exclusion>
    </exclusions>

6.测试

可通过nacos的服务管理观察服务是否全部启动成功(有一定延迟),并可通过swagger等查看接口文档

http://x.x.x.x:port/doc.html

Copyright © 2020. 恩梯梯数据(中国)信息技术有限公司. all right reserved,powered by Gitbook该文件修订时间: 2021-08-24 14:22:18

results matching ""

    No results matching ""