Skip to content

项目部署

后端项目编译

编译后端程序,需要您配置好 java 以及 maven 环境,然后进入到项目的根目录,执行 mvn clean package 即可编译。

编译完成后,在 aiflowy-starter/target 下会生成名称为 aiflowy-starter-1.0.0-alpha.1.jar 的文件。 我们复制该文件到服务器,即可通过 java -jar 命令进行启动。

后端项目部署配置

在项目编译成 jar,并进行部署时,需要注意以下内容:

1、取消 Log 的日志打印

启动时,注意添加 --spring.profiles.active=prod 配置。

shell
java -jar aiflowy-starter-1.0.0-alpha.1.jar --spring.profiles.active=prod

2、配置文件上传路径

yml
spring:
  web:
    resources:
      static-locations: file:/your_path
aiflowy: 
  storage:
    local:
      root: /your_path

前端项目编译

我们进入到项目的 aiflowy-ui-react 目录,修改 .env.production 文件下的 VITE_APP_SERVER_ENDPOINT 为你的后端项目的访问域名,如下图所示:

server_endpoint.png

修改完毕后,在 aiflowy-ui-react 目录下执行 npm run build 命令,即可在 aiflowy-ui-react/dist 目录下生成可以部署的静态文件。

我们复制静态文件到 nginx 目录下即可运行。 或者亦可以直接使用阿里云 OSS 来部署我们的静态文件内容。

前端部署到 Nginx

需先安装 nginx

Nginx 配置:

shell
server {
   ...
   
   location / {
      root /www/aiflowy/page;
      try_files $uri $uri/ /index.html;
    }

    # 本地文件访问,如果不是本地存储可以不配
    location /attachment {
      # 转发到后端
	  proxy_pass http://127.0.0.1:8080/static/attachment ;
	  # 或者可以直接转发到存储的目录
    }
    
    ...
}

以上示例中,/www/aiflowy/page 目录用来存放上面编译好的 aiflowy-ui-react/dist 目录下的所有文件。

前端部署到阿里云 OSS

通过阿里云 OSS 部署前端应用,是一种可选的方案,作者已经通过这种方式运行多年,不需要额外的搭建前端服务器,而且还可以使用 OSS CDN 进行分发,加快静态资源访问速度。

我们在阿里云 OSS Bucket 列表中 https://oss.console.aliyun.com/bucket 创建一个新的 Bucket。

ali_bucket.png

在创建 Bucket 时,其读写权限一定要选择 “公共读”,其他保存默认即可,如下图所示:

ali_bucket_read_public.png

开通完成后,我们进入 Bucket 设置,在 “静态页面” 中开通静态页面加载功能,在域名管理中绑定自己的访问域名,最后在文件列表中,上传 dist 目录下的文件即可。

ali_bucket_set.png