部署我们为您提供了多种方式,您可以选择/搭配适合您自己的部署方式
所需资源:通过npm run build
之后 目录中生成的build
文件夹,该文件夹内包含了所有的前端代码
执行相关build命令(可带参数编译,也可通过前端项目中.env
文件带入环境变量,或读取您服务器环境变量)
我们这里为了方便阅读, build
文件夹,以下简称APP
本地编译,FTP部署
将APP,通过FTP工具, 上传至您的web 目录中即可
适用情况:单一web空间或云存储,通过域名可直接访问 (例如:FTP空间,OSS,七牛云,又拍云)
服务器部署
通过nginx,apache,node等启动web服务,加载页面资源
适用情况:拥有独立服务器 (例如:阿里云,腾讯云,AWZ)
通过Docker 部署
本项目内置 dockerfile
可直接将 build
目录中编译好的文件打包至docker 镜像
- 执行
docker build -t joynoptest .
进行打包 - 执行
docker run --name joynoptest -it -p 10088:80 joynoptest
通过浏览器访问 http://localhost:10088
即可
适用情况:拥有独立服务器,并运用docker管理
如果你想用你的域名访问,请在nginx中心管理服务中添加
server {
listen 80;
server_name test.joynop.com; # 要解析进来域名
location / {
proxy_pass http://localhost:10088; #宿主机ip:容器对外的端口号
}
error_page 500 502 503 504 /50x.html;
}
混合部署
若您的业务足以考虑文件缓存,跨站攻击等问题,我们建议您通过混合部署的方式
- 将您的app部署在自己的服务器或docker
- 将编译后的文件同时部署在云存储(OSS,七牛云,又拍云等),并开启缓存服务,做好源站控制和回源管理
- 将您的域名增加CDN服务,并开启缓存机制,做好源站控制和回源管理
- 注意云端服务器安全,如修改22,3306,5432等常用端口号