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.mzph.cn/diannao/83943.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从 Word2Vec 到 BERT:AI 不止是词向量,更是语言理解

一、前言 在上篇文章中,我们介绍了Word2Vec以及它的作用,总的来说: Word2Vec是我们理解NLP的第一站 Word2Vec将词变成了“向量”—— 终于可以用机器理解词语的相似度 我们获得了例如“国王 - 男人 女人 ≈ 女王” 的类比能力 我们可以将…

镜像管理(2)Dockerfile总结

一、docker镜像构建方法 commoit :使用 docker commit 意味着所有对镜像的操作都是黑箱操作,生成的镜像也被称为黑 箱镜像,换句话说,就是除了制作镜像的人知道执行过什么命令、怎么生成的镜像,别人根 本无从得知。而且,即使是这个制作镜像的人,过一段时间后也无法记清具…

机器学习第十七讲:PCA → 把100维数据压缩成3D视图仍保持主要特征

机器学习第十七讲:PCA → 把100维数据压缩成3D视图仍保持主要特征 资料取自《零基础学机器学习》。 查看总目录:学习大纲 关于DeepSeek本地部署指南可以看下我之前写的文章:DeepSeek R1本地与线上满血版部署:超详细手把手指南 主…

【Linux庖丁解牛】——进程等待!

1. 进程退出场景 进程退出一般有三种场景: 。代码运行完毕,结果正确 。代码运行完毕,结果错误【比如,我们要对某个文件进行写入,但写入的文件路径出错,代码运行完毕,可是结果出错】 。代码异…

鸿蒙OSUniApp 制作简洁高效的标签云组件#三方框架 #Uniapp

UniApp 制作简洁高效的标签云组件 在移动端应用中,标签云(Tag Cloud)是一种常见的UI组件,它以视觉化的方式展示关键词或分类,帮助用户快速浏览和选择感兴趣的内容。本文将详细讲解如何在UniApp框架中实现一个简洁高效的…

ubuntu14.04/16.06 安装vscode(实测可以用)

地址:https://code.visualstudio.com/updates/v1_38 选择deb 这个版本还支持ubuntu14.04和16.06 sudo dpkg -i code_1.38.1-1568209190_amd64.deb sudo apt-get install -f安装成功,正常使用

WebRTC技术EasyRTC音视频实时通话驱动智能摄像头迈向多场景应用

一、方案背景​ 在物联网蓬勃发展的当下,智能摄像头广泛应用于安防、家居、工业等领域。但传统智能摄像头存在视频传输延迟高、设备兼容性差、网络波动时传输不稳定等问题,难以满足用户对实时流畅交互视频的需求。EasyRTC凭借低延迟、高可靠、跨平台特性…

Java EE进阶1:导读

1.发展历程 2.学习内容 前⾯的课程中,学习的是Java基础,JavaEE主要学习Java的应用,也就是学习Java在企业中是如何应用的 Java更多场景是业务开发,更狭义点可以理解为web开发.所以咱们的学习也是围绕着如何使用Java来做web开发 2.1 什么是Web开发? web&#xff08…

APPtrace 智能参数系统:重构 App 用户增长与运营逻辑

一、免填时代:APPtrace 颠覆传统参数传递模式 传统 App 依赖「邀请码 / 手动绑定」实现用户关联,流程繁琐导致 20%-30% 的用户流失。APPtrace 通过 **「链接参数自动传递 安装后智能识别」** 技术,让用户在无感知状态下完成关系绑定、场景还…

bisheng系列(一)- 本地部署(Docker)

目录 一、导读 二、说明 1、镜像说明 2、本节内容 三、docker部署 1、克隆代码 2、运行镜像 3、可能的错误信息 四、页面测试 1、注册用户 2、登陆成功 3、添加模型 一、导读 环境:Ubuntu 24.04、Windows 11、WSL 2、Python 3.10 、bisheng 1.1.1 背景…

docker介绍与常用命令汇总

docker简介 docker是什么? Docker 是一个开源的应用容器引擎,它可以让开发者将应用与运行环境打包成一个标准的、可移植的容器(Container),在任何地方都可以快速部署和运行,无需关心底层环境是否一致。 …

Android 中拖拽从一个组件到另外一个组件的写法(跨容器拖拽)

在 Android 中,拖拽一个图片(例如 ImageView)到另一个组件(如 LinearLayout、FrameLayout 等容器)涉及以下步骤: 准备工作 源组件:你从哪里开始拖动(如 ImageView)。 目…

火绒互联网安全软件:自主引擎,精准防御

在数字时代,网络安全是每一个用户都必须重视的问题。无论是个人用户还是企业用户,都需要一款高效、可靠的反病毒软件来保护设备免受恶意软件的侵害。今天,我们要介绍的 火绒互联网安全软件,就是这样一款由资深工程师主导研发并拥有…

使用亮数据代理IP+Python爬虫批量爬取招聘信息训练面试类AI智能体(手把手教学版)

文章目录 一、为什么要用代理IP?(重要!!!)二、环境准备(三件套走起)2.1 安装必备库(pip大法好)2.2 获取亮数据代理(官网注册送试用) 三、编写爬虫代码&#x…

Android屏幕采集编码打包推送RTMP技术详解:从开发到优化与应用

在现代移动应用中,屏幕采集已成为一个广泛使用的功能,尤其是在实时直播、视频会议、远程教育、游戏录制等场景中,屏幕采集技术的需求不断增长。Android 平台为开发者提供了 MediaProjection API,这使得屏幕录制和采集变得更加简单…

互联网大厂Java求职面试:Spring AI与大模型交互的高级模式与自定义开发

互联网大厂Java求职面试:Spring AI与大模型交互的高级模式与自定义开发 在当今技术领域,随着AI和大模型技术的广泛应用,如何在复杂的系统架构中高效地集成这些技术成为了各大互联网公司关注的重点。本文将通过一场模拟的面试对话&#xff0c…

MySQL 8.0 OCP 1Z0-908 161-170题

Q161.Examine this command, which executes successfully: cluster.addInstance ( ‘:’,{recoveryMethod: ‘clone’ 1}) Which three statements are true? (Choose three.) A)The account used to perform this recovery needs the BACKUP_ ADMIN privilege. B)A target i…

蓝桥杯1447 砝码称重

问题描述 你有一架天平和 N 个砝码,这 N 个砝码重量依次是 W1,W2,⋅⋅⋅,WN​。 请你计算一共可以称出多少种不同的重量? 注意砝码可以放在天平两边。 输入格式 输入的第一行包含一个整数 N。 第二行包含 N 个整数:W1,W2,W3,⋅⋅⋅,WN​…

金融量化智能体,如何开发一个有效的策略?

原创内容第887篇,专注智能量化投资、个人成长与财富自由。 本周重构了网站,升级了最新的回测引擎,以及升级了论坛。 策略年化210%,夏普比3.47,系统源代码及策略均可下载 年化37.5%,回撤控制在16.8%&…

JavaScript 性能优化:调优策略与工具使用

引言 在当今的 Web 开发领域,性能优化已不再是锦上添花,而是产品成功的关键因素。据 Google 研究表明,页面加载时间每增加 3 秒,跳出率将提高 32%。而移动端用户如果页面加载超过 3 秒,有 53% 的用户会放弃访问。性能…