SpringCloud,vue3应用使用AlibabaCloudToolkit自动化部署到远程服务器上的docker

AlibabaCloudToolkit

CloudToolkit是阿里出品的一款IDEA插件,通过它我们可以更方便地实现自动化部署,其内置的终端工具和文件上传功能,即使用来管理服务器也非常方便!这款IDEA插件不仅功能强大,而且完全免费!

CloudToolkit的安装是非常简单的,直接在IDEA的插件市场中搜索Cloud Toolkit然后进行安装即可。相比jenkins 真的简单,10分钟就能上手。

1.安装插件

插件安装完成后,打开左侧面板,右键Host图标我们就可以添加服务器的连接信息了,实现自动化部署之前需要先配置好连接信息;

2.配置服务器连接

3.自动化部署

准备Dockersfile文件和执行脚本

1.创建Dockersfile

复制代码
# 该镜像需要依赖的基础镜像
FROM amd64/openjdk:8-jre-alpine
#FROM --platform=linux/amd64 eclipse-temurin:21-jre-alpine
LABEL maintainer=""

#RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

RUN mkdir -p /mycrm-system-cloud

WORKDIR /mycrm-system-cloud

EXPOSE 15000

ADD ./mycrm-system-cloud-start-6.0.0.jar ./mycrm-system-cloud-start-6.0.0-x86.jar

CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar mycrm-system-cloud-start-6.0.0-x86.jar

2.创建执行脚本

思路:把jar包放到linux环境上,用linux环境的docker生成docker包再运行

复制代码
app_name='mycrm-start-x86:6.1.0 '
# 定义应用版本
app_version='1.0-SNAPSHOT'
# 定义应用环境
profile_active='prod'
docker stop ${app_name}
echo '----stop container----'
docker rm -f ${app_name}
echo '----rm container----'
docker rmi -f mycrm-system-cloud-start-x86
echo '----rm image----'
# 打包编译docker镜像
docker build -t app_name  .

#运行docker
echo '----build image----'
docker-compose -f  ../docker-compose-core-x86.yml up -d  mycrm-boot-system

#自己直接写docker run 命令也行,我这之前用的是 docker-compose

docker-compose-core-x86.yml 文件中 mycrm-boot-system 部分

3.将文件上传到服务器

这里将文件上传到服务器的/home/czy/webapps/docker_demo目录下

4.配置Deploy to Host

1.添加Deploy to Host

  1. 在IntelliJ IDEA界面右上方项目配置处选择框中单击Edit Configuration...。
  2. 在Run/Debug Configuration页面单击左上角+,选择Deploy to Host。

2.配置Deploy to Host

Target Directory:项目打包上传到服务器上的目录 /home/czy/webapps/docker_demo

After deploy:打包上传后执行的脚本 sh /home/czy/webapps/docker_demo/start.sh


3.修改高级设置,配置下查看容器日志的命令

此处配置docker logs -f docker_demo,可以在idea控制台看到容器运行后的日志

运行Deploy to Host

查看控制台输出的日志,程序输出INFO和ERROR日志

CloudToolkit常用功能

CloudToolkit的功能远不止于此,它内置了终端工具,在IDEA中管理Linux服务器,用它就够了,直接通过底部面板,点击终端按钮即可打开,通过上传功能也可以上传文件

5.配置vue3项目

vue3项目配置使用build配置

start.sh文件

上传后的文件

别的原理都一样,就不再赘述,只是在我配置的时候发现放上发现上传后的dist文件403访问不到,可能是权限的问题,我把原来的dist文件不再删除,直接覆盖就好了,先这样吧,主要是为了测试用,生产环境直接打docker包给运维了。

参考:

https://blog.csdn.net/weixin_45240169/article/details/126769748

https://help.aliyun.com/document_detail/167889.html

配置vue3参考:

https://segmentfault.com/a/1190000039053443

相关推荐
SelectDB9 小时前
秒级弹性、最高降本 70%:SelectDB Serverless 如何重塑云数仓资源效率
大数据·后端·云原生
秋播3 天前
国内本地WSL2编译rancher源码
云原生
小猿姐4 天前
MySQL Top 10 热点问题 AI 运维实战:从内核诊断到云原生运维
mysql·云原生·aiops
阿里云云原生5 天前
深入内核:拆解 OpenTelemetry eBPF 探针如何优雅地“透视”多语言微服务?
云原生
shushangyun_5 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
施努卡机器视觉5 天前
SNK施努卡侧滑门锁上滑轮总成自动化装配线,从零件到组件,全流程精密制造方案
运维·自动化·制造
dayuOK63076 天前
写作卡壳怎么办?我的“5分钟启动法”
人工智能·职场和发展·自动化·新媒体运营·媒体
java_cj6 天前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes
志栋智能6 天前
超自动化巡检:如何选择适合你的起点?
运维·自动化
HackTwoHub6 天前
Sqli-Scanner SQL注入SKILL自动化挖掘SQL注入,零依赖自动化SQL注入挖掘,赏金猎人
数据库·人工智能·sql·web安全·网络安全·自动化·系统安全