当前位置: 首页 > java >正文

codeup添加流水线docker自动化部署

在项目根目录下增加Dockerfile文件

# 使用基础镜像
FROM maven:3.8.4-openjdk-17-slim AS build
# 设置工作目录
WORKDIR /app
# 复制项目源代码
COPY . .
# 构建项目
RUN mvn clean package -DskipTests
# 验证JAR包是否生成
RUN ls -l target/your-project.jar
# 使用合适的基础镜像,如openjdk:17-jdk-slim
FROM openjdk:17-jdk-slim
# 设置工作目录
WORKDIR /app
# 复制项目JAR包到容器内,需根据实际打包后的文件名调整
COPY --from=build /app/target/your-project.jar your-project.jar
# 创建日志目录
RUN mkdir -p /app/log
# 暴露项目运行端口,根据实际情况修改
EXPOSE 8092
# 启动命令
ENTRYPOINT ["java", "-Xmx512m", "-Xms256m", "-jar", "your-project.jar"]

在阿里云界面点击新建流水线

根据你项目语言不同创建对应的流水线模板

点击流水线源配置你的代码仓库地址并选择分支,代码源根据你的实际情况选择,我是codeup上

在构建这里,设置步骤,构建镜像并上传,填写你的仓库地址

最后就是docker部署,编辑部署脚本

脚本示例

#部署脚本会在部署组的每台机器上执行。一个典型Docker部署脚本如下:
#示例中使用的$image是您在脚本下方的变量处定义的变量(上游输出或自定义)
#docker run $image
echo $DOCKER_PASSWORD | docker login --username $DOCKER_USER --password-stdin registry.cn-shanghai.aliyuncs.com
docker images --format "{{.Repository}}:{{.Tag}} {{.ID}} {{.CreatedAt}}" | grep "registry.cn-shanghai.aliyuncs.com/iaar/*****" | sort -k3 -r | tail -n +2 | awk '{print $2}' | xargs docker rmi -f
docker image prune --filter "dangling=true" -f
docker rm -f *****-back
docker run --restart=always -d  -p 8092:8092 --name ****-back -v /root/zdy/docker/log/*****:/app/log $image

点击保存并运行即可

http://www.xdnf.cn/news/7257.html

相关文章:

  • 初识MySQL · 索引
  • Text2SQL在Spark NLP中的实现与应用:将自然语言问题转换为SQL查询的技术解析
  • spring中的EnvironmentPostProcessor接口详解
  • 小乌龟git中的推送账户、作者账户信息修改
  • C#:多线程
  • 关于百度地图JSAPI自定义标注的图标显示不完整的问题(其实只是因为图片尺寸问题)
  • 2025.5.19总结
  • 使用 Qt QGraphicsView/QGraphicsScene 绘制色轮
  • k8s集成环境中pod运行的容器退出码141故障解决方案及排查方向,其他退出码也可以参考此篇
  • Linux内核深入学习(4)——内核常见的数据结构2——红黑树
  • 多模态大语言模型arxiv论文略读(八十三)
  • 云原生时代的系统可观测性:理念变革与实践体系
  • SpringCloud——EureKa
  • DeerFlow安装配置及使用案例
  • 黑马程序员C++2024新版笔记 第三章 数组
  • 一、内存调优
  • elasticsearch之记录es7.17升级8.17 springboot2.7.0 程序改造坑
  • Spring Boot与Kafka集成实践:从入门到实战
  • LLM最后怎么输出值 解码语言模型:从权重到概率的奥秘
  • 理解硬链接和软链接:原理与实践
  • 教学网站1:《软件工程》精品课程教学网站的设计与实现(摘要和目录)
  • PLC双人舞:profinet转ethernet ip网关奏响施耐德与AB的协奏曲
  • MYSQL笔记
  • virtual下Ubuntu24.04版本上配置网络与外网和宿主机之间互通
  • iOS 蓝牙开发中的 BT 与 BLE
  • 2025毕业论文与答辩资料精选汇总
  • 32、跨平台咒语—— React Native初探
  • 已知6、7、8月月平均气温和标准差,求夏季季平均温度与标准差
  • 算法题(150):拼数
  • FreeMarker