将springboot项目一键部署到远程docker(docker+Alibaba Cloud Toolkit)

一键部署Spring Boot应用至Docker
本文介绍如何使用Docker和Alibaba Cloud Toolkit实现Spring Boot应用的一键部署。包括编写Dockerfile构建镜像、IDEA插件配置、远程服务器部署及日志监控等关键步骤。

1. 步骤

  • 服务器安装docker
  • 编写运行jar包得Dockerfile,构建镜像
  • idea安装,配置Alibaba Cloud Toolkit
    • 这个插件会执行打包,上传到服务器,上传后执行命令,一键完成部署,jar包war包没有限制,docker不docker的也没有限制,主要在于自己的命令

 

2. 构建运行jar包的镜像

  • 新建文件夹 /root/dockerFile/spring-boot-docker
  • 新建Dockerfile文件
FROM java:8
MAINTAINER bingo
ADD app.jar app.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","app.jar","> /log/app.log"]
  • 在此目录下放add.jar包
  • 执行打包命令(springboot-app是镜像名字,.表示当前目录)
docker build -t springboot-app .
  • 启动容器,可以把jar包映射出来-v
docker run -d --name vue-app -p 8082:8082 -v /root/dockerFile/spring-boot-docker/ROOT.jar:/app.jar springboot
  •  

3. Alibaba Cloud Toolkit得配置

  • 安装Alibaba Cloud Toolkit
  • 在idea底部或其他地方找找Alibaba Cloud View,Add Host 输入服务器ip,端口,用户名,密码,如果找不到,先往下走
  • 打开Edit Configuration,点加号,选择Deploy to Host
    • 修改name
    • 选择file,maven打包,本地文件,gradle打包
    • 选择ip(上面如果没找到设置ip的地方,在这点manage Host,设置完再回来)
    • 设置Target Dictectory,可以设置在app.jar的目录,/root/dockerFile/spring-boot-docker
    • 设置After Deploy
      • 可以直接输入命令,
      • 或者在/root/dockerFile/spring-boot-docker新增sh文件,在此配置sh /home/www/impcms/restart.sh,
      • 会在上传完包之后执行,
      • 重名名war或jar的名称 mv ROOT.jar app.jar
      • 写重启的命令 如 docker restart app,
      • 也可以在里面写查看日志的命令,如docker logs -f -t app,插件会在控制台输入日志信息、
      • mv hyzyycms.war imp-cms.war
        docker restart impcms
        docker logs -f -t impcms

         

    • 设置Befor Lanuch,在这配置打包的项目,选择包,
      • 打包命令省略mvn,clean package即可,
      • 如果有多个项目模块,需要上传的项目放在最后一个
    • ok,运行即可
  •  

### Alibaba Cloud Toolkit 的使用指南和功能介绍 #### 工具概述 Alibaba Cloud Toolkit 是由阿里巴巴云开发的一款集成开发环境 (IDE) 插件,旨在简化开发者在云端的应用程序开发、调试和部署流程[^1]。该工具支持主流 IDE 平台(如 IntelliJ IDEA 和 Visual Studio Code),并提供了一系列强大的功能来提升开发效率。 --- #### 主要功能 1. **一键部署** 开发者可以通过简单的图形化界面操作完成应用程序到阿里云服务器的部署工作。无论是 ECS 实例还是容器服务 ACK,都可以轻松实现自动化部署过程。 2. **日志查看与诊断** 提供实时的日志流功能,允许用户直接从本地 IDE 查看远程运行实例上的应用日志。这极大地提高了排查问题的速度以及维护系统的便利性。 3. **函数计算支持** 集成了对阿里云 Function Compute 的全面支持,使得创建、测试及管理无服务器架构变得更加简单快捷。 4. **数据库连接管理** 支持多种类型的数据库资源接入配置向导,方便建立安全稳定的网络通道访问远端数据存储单元。 5. **API 测试工具** 内置 RESTful API 调试器,无需额外安装第三方软件即可发起 HTTP 请求并对返回结果进行分析验证。 6. **Docker 容器镜像构建** 自动化处理 Dockerfile 文件生成任务,并指导如何上传至阿里云容器镜像仓库ACR中保存备份副本。 7. **多语言框架兼容** 对 Java Spring Boot/Spring Cloud 微服务体系有特别优化的同时还兼顾 Python Flask/Django 等其他流行编程范式的项目结构需求。 8. **CI/CD流水线整合** 可无缝衔接 Jenkins/GitLab CI 等持续交付管道解决方案,促进敏捷迭代周期内的版本控制策略实施效果最大化。 --- #### 如何获取与安装? 对于不同平台的具体下载地址链接,请参照官方文档说明页面获取最新版次信息: - 如果您正在使用 JetBrains 系列产品,则可以直接搜索插件市场中的Alibaba Cloud” 关键词完成在线激活启用; - 若偏好 VSCode 用户群体的话,则建议前往扩展商店检索对应名称项后点击 install 即可开始体验。 以下是针对 Gradle 构建项目的依赖声明样例代码片段展示: ```gradle // build.gradle 中添加如下内容以引入 SDK 库 dependencies { implementation 'com.alibaba.cloud:spring-cloud-alibaba-dependencies:latest.release' } ``` 同样地,在 multi-module 场景下还需要同步修改 `settings.gradle` 来确保子模块能够正常解析父 POM 定义关系: ```groovy rootProject.name = 'your-project-name' include 'module-a', 'module-b' // 替换为您实际拥有的组件目录名列表 ``` 更多关于本地搭建模拟环境或者高级特性使用的细节描述参见参考资料三所提及的相关资料位置[^3]。 --- #### 注意事项 尽管上述列举的功能已经覆盖了大部分日常应用场景下的基本诉求点,但在初次接触阶段仍需注意以下几点提示以便更好地适应新工具带来的改变: - 建议先熟悉基础概念再逐步深入探索复杂选项设置逻辑; - 利用好内置的帮助手册查询机制解决遇到的各种疑问困惑情况; - 不断关注社区动态分享反馈意见共同推动产品质量进步方向调整优化进程加快步伐前行不断超越自我追求卓越成就非凡梦想未来无限可能等待着我们一起去发现创造属于自己的精彩故事篇章吧! ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值