在京东云(JD Cloud)上部署 Spring Boot 项目,可以使用多种方式,例如:
- 使用京东云云服务器(CVM)手动部署
- 使用京东云容器服务(Kubernetes)部署
- 使用京东云函数计算(JDCP 或 Serverless)部署
- 使用京东云应用引擎(JAE)部署(类似 PaaS)
目前(截至2024年),京东云的应用引擎(JAE)支持 Java 应用部署,是部署 Spring Boot 项目最简单的方式之一。下面以 京东云应用引擎(JAE) 为例,详细介绍如何部署一个 Spring Boot 项目。
✅ 方式一:使用京东云应用引擎(JAE)部署 Spring Boot 项目(推荐)
✅ 优点:
- 无需管理服务器
- 自动部署、自动扩缩容
- 支持 Java 8/11
- 支持通过 Git、JAR 包等方式部署
🛠️ 部署步骤
1. 准备 Spring Boot 项目
确保你的 Spring Boot 项目是一个可执行的 JAR 包。
mvn clean package
生成的文件通常位于 target/your-app.jar
。
注意:确保
pom.xml
中配置了正确的<packaging>jar</packaging>
,且主类有@SpringBootApplication
注解。
2. 登录京东云控制台
访问:https://console.jdcloud.com
登录后进入 应用引擎(JAE) 服务。
路径:产品与服务 → 企业应用 → 应用引擎(JAE)
3. 创建应用
点击 “创建应用”:
- 应用名称:如
my-springboot-app
- 运行环境:选择 Java
- Java 版本:选择
Java 8
或Java 11
- 部署方式:
- 可选择上传 JAR 包
- 或使用 Git 仓库自动构建(支持 GitHub/GitLab)
4. 上传 JAR 包或配置 Git
选项 A:上传 JAR 包
- 选择“上传部署包”
- 上传你本地打包好的
your-app.jar
- 启动命令填写:
java -jar your-app.jar
选项 B:使用 Git 仓库(推荐 CI/CD)
- 选择“Git 仓库”
- 填写仓库地址(如 GitHub)
- 设置分支(如
main
) - 构建命令:
mvn clean package -DskipTests
- 启动命令:
java -jar target/*.jar
5. 配置应用资源
- 实例规格:如 1C1G、2C4G(按需选择)
- 实例数量:1 个起步
- 环境变量(可选):如
SPRING_PROFILES_ACTIVE=prod
- 网络:默认即可,JAE 会分配公网访问域名
6. 启动并访问应用
点击“创建并部署”,等待构建和启动完成。
部署成功后,JAE 会分配一个默认域名,如:
http://my-springboot-app.cn-north-1.jdcloud.com
你可以通过浏览器或 curl
访问你的 Spring Boot 接口,例如:
http://my-springboot-app.cn-north-1.jdcloud.com/hello
✅ 其他方式简要说明
方式二:使用京东云 CVM(云服务器)部署
- 购买一台 Linux 云服务器(如 CentOS 7+)
- 安装 Java 环境(OpenJDK 8/11)
- 上传 JAR 包(使用
scp
或 FTP) - 启动应用:
nohup java -jar your-app.jar > app.log 2>&1 &
- 配置安全组开放 8080 端口
- 通过公网 IP 访问:
http://<公网IP>:8080
优点:灵活;缺点:需自行维护服务器。
方式三:使用京东云容器服务(Kubernetes)
- 将 Spring Boot 打包成 Docker 镜像
- 推送镜像到京东云镜像仓库(JDCloud Container Registry)
- 在京东云 K8s 集群中部署 Deployment 和 Service
- 通过 LoadBalancer 或 Ingress 暴露服务
适合有容器化经验的团队。
方式四:Serverless(JDCP 函数计算)
目前对 Java Spring Boot 支持有限,适合无状态小服务,不推荐直接部署完整 Spring Boot 应用。
🔐 安全建议
- 使用 VPC 隔离应用
- 配置安全组,只开放必要端口
- 使用 HTTPS(可结合京东云 SSL 证书服务)
- 敏感配置使用环境变量或配置中心
📌 总结
部署方式 | 适合场景 | 难度 | 推荐指数 |
---|---|---|---|
JAE(应用引擎) | 快速上线、无需运维 | ⭐⭐ | ⭐⭐⭐⭐⭐ |
CVM | 需要完全控制服务器 | ⭐⭐⭐ | ⭐⭐⭐⭐ |
Kubernetes | 微服务、高可用、自动化部署 | ⭐⭐⭐⭐ | ⭐⭐⭐ |
Serverless | 小型函数、事件驱动 | ⭐⭐ | ⭐⭐ |
✅ 推荐新手使用 JAE 部署 Spring Boot,简单高效。
如果你提供具体的项目结构或部署需求(如数据库、域名绑定等),我可以进一步给出详细配置方案。