后端部署
后端项目我就拿 Java 来举例吧,打包后一般有两种产物形式:依赖 web 服务器部署的 war 包,以及内嵌 web 服务器 & 可直接运行的 jar 包。对应的部署方式也不同,加起来共有 5 种。
1. web 服务器
如果你要部署 war 包,最常见的 web 服务器当属 tomcat 和 jetty 了,和部署前端项目一样,先手动安装 tomcat,然后改几行配置文件,让 tomcat 能找到 war 包即可。注意尽量不要暴露 tomcat 提供的应用管理页面哦!
Tomcat 应用管理页面2. 直接启动
如果你使用 SpringBoot 框架开发,打包之后得到的是 jar 包,内置了 tomcat 等 web 服务器,因此只需要用一行命令启动 jar 包即可,比如:
java -jar app.jar --spring.profiles.active=prod
如果想在后台运行 jar 包,那就给命令开头补充 nohup
,结尾补充 &
。
3. 宝塔面板
和前端部署一样,如果你懒得自己在服务器上安装 java、maven、tomcat 等环境,可以直接用宝塔面板来帮你安装:
宝塔面板安装软件4. 容器
使用 Docker 容器技术,理论上可以封装任何环境和应用,对于后端 Java 项目来说,把 Java 环境、Maven 和 jar 包封装成一个镜像就好了。
在写 Dockerfile 时,可以直接使用 maven:3.5-jdk-8-alpine
这种基础镜像,自带了 jdk 和 maven,省去了自己写安装脚本的麻烦。
当然,有需要的话,你还可以在 Java 容器前加个 Nginx 负载均衡~
5. 容器托管平台
只要是容器,就可以放到容器托管平台进行管理,对于后端应用来说也是如此,不再赘述~