2分钟在阿里云ECS控制台部署个人应用(图文示例)
作为一名程序员,我有大量的个人代码和应用托管在Github/Gitee这些代码仓库。当我想要部署这些代码到我的阿里云ECS服务器时,往往会很麻烦,主要问题有这些:
- 需要手动安装和配置git,过程非常繁琐。
- 每次都需要登录到机器上执行命令完成部署。
- 如果是docker部署项目,还要安装和配置docker。
- 没有过往的部署记录。
- 每新开一台机器,上述过程全部要重来一遍。
不知道大家有没有同感~
最近发现阿里云ECS控制台上线了一个构建部署的新功能,可以免除这些前期的安装配置工作,打通github/gitee仓库和阿里云ECS,一键部署。本文参考该功能的阿里云官方文档编写,感兴趣的朋友可以看一下。
先po一下适用场景和使用限制吧:
适用场景
- 适用于在单台ECS上构建部署。如果您需要在多台ECS实例上部署应用,请参见构建部署示例模板。
- 代码源为Gitee或GitHub平台的代码仓库。
前提条件
部署应用的ECS实例需满足以下条件:
- ECS实例为Linux操作系统。
- ECS实例需开通公网。具体操作,请参见为ECS实例开通公网。
- ECS实例必须处于运行中状态。
- ECS实例已安装云助手,并且云助手状态为正常。(云助手一般ECS都已预装)
下面详细说一下怎么使用,官方文档提供了一个示例代码,本文也借用这个示例演示。
gitee:gitee示例代码(中国内地建议使用gitee)
github:github示例代码
操作步骤
-
把上述阿里云官方gitee代码fork到自己的gitee仓库。

-
在ECS管理控制台,找到想要部署到的ECS实例,点击进入详情页。在定时与自动化任务里找到构建部署。


-
点击创建执行,填入代码源配置和构建部署配置相关信息。



-
点击下一步确定,即可开始执行构建部署。这个执行会拉取你指定的仓库代码到ECS上,并在代码根目录运行构建部署脚本。过程中会自动检测并安装git,docker,自动帮你git clone代码等等。
-
执行结束后,可以在浏览器中输入
http://ECS实例公网IP:8080/hello查看已部署的应用。页面返回如下信息,说明已部署成功。(这个示例,ECS需开通入方向8080端口,具体操作,请参见添加安全组规则。)
-
所有部署执行记录都会保存。如果gitee仓库代码更新了,可以直接点击再次执行,又会自动拉取最新代码,重新构建部署。

总结
这个功能可以帮助我打通github/gitee代码仓库和阿里云ECS,并且省去了构建部署中的很多繁琐的安装配置,方便个人开发者快速实现CI/CD,可以把更多精力放在应用本身的实现上。
关于本文,如果您在实践过程中遇到问题欢迎留言,up看到都会回的。另外,听说点赞收藏越多,up回得越快~ 有阿里云ECS的朋友快去试试吧!
相关文章:
2分钟在阿里云ECS控制台部署个人应用(图文示例)
作为一名程序员,我有大量的个人代码和应用托管在Github/Gitee这些代码仓库。当我想要部署这些代码到我的阿里云ECS服务器时,往往会很麻烦,主要问题有这些: 需要手动安装和配置git,过程非常繁琐。每次都需要登录到机器…...
2023.8 用于生物医学问答的选择性 UMLS 知识注入
Selective UMLS knowledge infusion for biomedical question answering Selective UMLS knowledge infusion for biomedical question answering | Scientific Reports 韩国首尔国立大学研究生院生物工程跨学科项目 问题 如何高效地将生物医学知识注入预训练语言模型&#x…...
chat2db调用ollama实现数据库的操作。
只试了mysql的调用。 其它的我也不用,本来想充钱算了。最后一看单位是美刀。就放弃了这分心。于是折腾了一下。 本地运行chat2db 及chat2db ui https://gitee.com/ooooinfo/Chat2DB clone 后运行起来 chat2db的java端,我现在搞不清这一个项目是有没有…...
Rust 生态系统的未来与学习方向
Rust 生态系统的未来与学习方向 Rust 作为一门系统编程语言,因其内存安全性、并发性能以及生态的不断壮大,已逐渐成为开发者和企业的首选语言之一。随着技术的进步,Rust 的生态系统持续发展,涉及多个领域,包括 Web 开…...
Vue的基础使用
一、为什么要学习Vue 1.前端必备技能 2.岗位多,绝大互联网公司都在使用Vue 3.提高开发效率 4.高薪必备技能(Vue2Vue3) 二、什么是Vue 概念:Vue (读音 /vjuː/,类似于 view) 是一套 构建用户界面 的 渐进式 框架…...
c++中,头文件包含iostream.h和`<iostream>`的差别
引言 在编写c代码时,有时候包含头文件iostream.h,有时候又包含<iostream>,初学者会对此感到很疑惑。 实际上,这两者是同一个头文件,只是包含方式不同,这是由于C的历史原因造成的,下面解释…...
界面控件DevExpress WPF中文教程:TreeList视图及创建分配视图
DevExpress WPF拥有120个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件…...
软件工程笔记二—— 软件生存期模型
目录 瀑布模型 瀑布模型的特点 阶段间具有顺序性和依赖性。 推迟实现的观点 质量保证的观点 瀑布模型的优点 瀑布模型的缺点 快速原型模型 快速原型模型的优点 快速原型模型的缺点 增量模型 增量模型的优点 增量构件开发 螺旋模型 完整的螺旋模型(顺…...
关于若依500验证码问题的求助
关于若依框架中验证码出现500错误的问题,这通常表示服务器内部错误。以下是一些可能的原因及解决方案: 一、配置文件问题 .env.production文件: 确保.env.production文件中的VUE_APP_BASE_API已经修改成服务器上的域名地址,而不…...
网络安全:守护数字世界的坚固防线
随着信息技术的飞速发展,网络已成为我们生活中不可或缺的一部分。它为我们提供了便捷的信息获取、交流娱乐的渠道,但同时也带来了前所未有的安全挑战。网络安全,这一看似遥远却又紧密相连的概念,正日益成为我们共同关注的焦点。 …...
Vue前端开发,组件及组件的使用
什么是组件 组件(Component)是Vue中最强大的功能之一,每个Vue 文件就是一个个独立的组件,组件也可以被其他组件调用,形成嵌套关系,大部分的应用都是由各类不同功能的小组件进行构建,形成一个功能强大的大组件树系统&a…...
from sklearn.feature_selection import VarianceThreshold.移除低方差的特征来减少数据集中的特征数量
VarianceThreshold 是 scikit-learn 库中的一个特征选择类,它通过移除低方差的特征来减少数据集中的特征数量。这种方法特别适用于删除那些在整个数据集中几乎不变的特征,因为这些特征对于模型的预测能力贡献不大。 参数: threshold&#x…...
git 同步上游仓库到远端仓库
首先知道什么是本地仓库,远端仓库,上游仓库 本地仓库:你从远端仓库克隆到本地 PC 上的仓库 远端仓库:从上游仓库 fork 过来的仓库,可以理解为自己的仓库 上游仓库:公司的仓库,所有权不在于你 当…...
SQL中的时间类型:深入解析与应用
在数据库管理系统中,时间数据的处理是至关重要的一环。无论是记录事务的创建时间、用户的登录时间,还是进行数据分析时的时间序列处理,时间类型都扮演着不可或缺的角色。SQL(Structured Query Language)作为与数据库交…...
如何用分布式数据库解决慢查询问题
当使用MySQL时,我们不可避免地会遇到许多与慢查询相关的问题。 为了解决这些慢SQL的问题,我们通常需要投入大量的精力去研究执行计划、考虑合适的索引策略、精心改写SQL语句,甚至可能需要调整程序逻辑。然而,针对特定SQL的优化往…...
vscode文件重定向输入输出(竞赛向)
VS Code 中文件重定向输入输出 在使用 VS Code 调试或运行 C 程序时,可以使用文件重定向来方便地从文件读取输入并将输出写入文件,而不是修改代码中的 ifstream 和 ofstream。 方法一:在终端中使用文件重定向 假设你的 C 程序文件为 main.…...
[Linux]IO多路转接(上)
1. IO 多路转接之select 1.1 select概述 select 是系统提供的一个多路转接接口,其核心工作在于等待。它能够让程序同时监视多个文件描述符上的事件是否就绪,只有当被监视的多个文件描述符中有一个或多个事件就绪时,select 才会成功返回&…...
基于Java的药店管理系统
药店管理系统 一:基本介绍开发环境管理员功能模块图系统功能部分数据库表设计 二:部分系统页面展示登录界面管理员管理进货信息界面管理员管理药品信息界面管理员管理员工界面管理员管理供应商信息界面管理员管理销售信息界面员工对信息进行管理员工对销…...
LaTeX之四:如何兼容中文(上手中文简历和中文论文)、在win/mac上安装新字体。
改成中文版 如果你已经修改了.cls文件和主文档,但编译后的PDF仍然显示英文版本,可能有以下几个原因: 编译器问题:确保你使用的是XeLaTeX或LuaLaTeX进行编译,因为它们对Unicode和中文支持更好。你可以在你的LaTeX编辑器…...
Unity自动LOD工具AutoLOD Mesh Decimator的使用
最近在研究大批量物体生成,由于我们没有专业美术,在模型减面工作上没有人手,所以准备用插件来实现LOD功能,所以找到了AutoLOD Mesh Decimator这个插件。 1,导入插件后,我们拿个实验的僵尸狗来做实验。 空…...
Unity URP专业UI模糊效果实战指南:4步实现高性能毛玻璃界面
Unity URP专业UI模糊效果实战指南:4步实现高性能毛玻璃界面 【免费下载链接】Unified-Universal-Blur UI blur (translucent) effect for Unity. 项目地址: https://gitcode.com/gh_mirrors/un/Unified-Universal-Blur 在Unity游戏开发中,UI界面的…...
终极Il2CppDumper使用指南:从原理到实战的Unity逆向工程利器
终极Il2CppDumper使用指南:从原理到实战的Unity逆向工程利器 【免费下载链接】Il2CppDumper Unity il2cpp reverse engineer 项目地址: https://gitcode.com/gh_mirrors/il/Il2CppDumper Il2CppDumper是一款强大的Unity il2cpp逆向工程工具,能够帮…...
半年飙到 15.7 万 Star!OpenCode:Claude Code 最强开源对手,模型随便挑
👉 这是一个或许对你有用的社群🐱 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料: 《项目实战(视频)》:从书中学,往事上…...
无人机载RIS混合能量收集系统设计与优化
1. 无人机载RIS混合能量收集系统概述 在6G物联网通信场景中,无人机搭载可重构智能表面(RIS)的技术组合正在重塑无线网络架构。这种创新方案通过将RIS的被动波束赋形能力与无人机的三维机动性相结合,有效解决了传统地面基站覆盖范围有限、部署不灵活的痛点…...
深入UE渲染管线:从.usf文件到FGlobalShader,理解全局Shader的完整生命周期与最佳实践
深入UE渲染管线:从.usf文件到FGlobalShader,理解全局Shader的完整生命周期与最佳实践 当我们需要在Unreal Engine中实现一个全新的后处理效果或定制底层渲染管线时,全局Shader(Global Shader)往往是必经之路。与材质编…...
避坑指南:在CentOS 7上部署泛微Ecology9 OA,我踩过的那些“内存不足”和“防火墙”的坑
CentOS 7部署泛微Ecology9 OA系统:从内存优化到防火墙配置的深度避坑指南 在Linux环境下部署企业级OA系统从来都不是一件简单的事情,尤其是像泛微Ecology9这样功能复杂的大型系统。表面上看,官方文档和网络上的教程似乎已经提供了完整的步骤&…...
Python开发者三步完成Taotoken接入并调用多模型
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 Python开发者三步完成Taotoken接入并调用多模型 对于希望便捷使用多种大语言模型的Python开发者而言,通过一个统一的AP…...
从老式万用表到精密测量:双积分ADC如何用‘慢’换来‘准’?选型避坑指南
从老式万用表到精密测量:双积分ADC如何用‘慢’换来‘准’?选型避坑指南 在仪器仪表和传感器信号调理领域,精度与速度的权衡一直是硬件工程师面临的核心挑战。当我们处理温度、压力或称重传感器等低频高精度信号时,传统的SAR和Σ…...
手把手教你用VHDL在FPGA上解码IMX214 MIPI视频(基于MC20901 D-PHY,含6套工程源码)
基于VHDL的FPGA视频处理系统实战:从IMX214到高清显示 在嵌入式视觉系统开发中,FPGA因其并行处理能力和低延迟特性,成为视频采集与处理的理想平台。本文将深入探讨如何利用VHDL语言在Xilinx FPGA上构建完整的MIPI视频处理流水线,实…...
蓝桥杯嵌入式模拟赛2实战复盘:用STM32G431搞定LCD、LED、按键、PWM和串口
蓝桥杯嵌入式模拟赛2全流程实战解析:从零构建STM32G431多模块协同系统 当开发板的电源指示灯第一次亮起,LCD屏幕浮现出清晰的白色字符时,我知道这不仅仅是一次普通的练习——这是将分散的模块知识整合成完整系统的关键时刻。蓝桥杯嵌入式模拟…...
