环境 主机:centos7.5 说明:docker的安装,可以参考其他文档,这里就不赘述了。
原创 2022-08-31 14:29:05
112阅读
1、CI/CD概述 持续集成(Continuous Integration,CI):代码合并、构建、部署、测试都在一起,不断地执行这个过程,并对结果反馈。 持续部署(Continuous Deployment,CD):部署到测试环境、预生产环境、生产环境。 持续交付(Continuous Deliv ...
转载 2021-08-28 18:16:00
385阅读
2评论
   
原创 2022-05-24 08:14:23
100阅读
持续集成(CI)是一种开发实践方式,需要团队中的开发人员定期集成他们的工作,通常每天多次。每次推送到主代码仓库都需要通过自动构建进行验证。这种做法有助于尽快发现问题,从而加快开发速度,并提高代码的质量。大拿Martin Fowler写了一篇关于这个主题的文章,解释了这些概念,并描述了最佳实践有几种方式可以为Android设置CI。最广泛使用的是Jenkins,TeamCity和Travis CI
拉取镜像 启动容器 暴露出来 9980和9922端口 docker pull gitlab/gitlab-ce:latest mkdir -P /data/gitlab-test/etc /data/local/gitlab-test/log /data/local/gitlab-test/opt ...
转载 2021-10-31 14:12:00
782阅读
2评论
提到容器平台,最早接触的便是LXC(Linux Container),当时是2010年刚刚接触虚拟化平台的时候,当时开源解决方案是xen的天下(后来KVM才后来者居上),且性能各方面都不弱,价值当时还不是移动互联网时代,业务量远远没有那么大,大部分公司都是物理机部署应用,用虚拟化平台的公司也是寥寥无几,可想而知,没有业务,没有场景,那就没有技术的用武之地了,所以,LXC生而伟大而用不逢时,Docker之所以能够青出于蓝而胜于蓝,取得如此大的成功的原因还是归咎于移动互联网带来的流量大爆炸,普通基于物理机,虚拟机甚至云主机(虽然弹性伸缩应该是云主机的特性,但是当时国内看起来根本没有做到的,比起AWS来,差距之大,只能意会)的业务架构已经不能满足目前的应用场景了。
原创 精选 2018-07-29 00:03:07
10000+阅读
3点赞
肖远昊 译 分布式实验室现如今持续集成(CI)和持续交付(CD)大家已经不陌生了,它们是为了辅助你的产品/工程项目能够更快、更容易地运行最新版本。在这篇文章中,我将讲述如何使用Docker镜像和GitLab的CI/CD工具构建一个Pipeline,在一个VPS/KVM Linux服务器上进行部署。前提要求对Linux、Docker以及CI/CD有基本的了解。GitLab帐号(免费计划即可)。一台具
原创 2021-05-12 15:58:13
775阅读
# 使用GitLab CI构建Docker镜像并打上标签 在现代软件开发中,Docker已成为一个不可或缺的工具,它允许开发者将应用及其所有依赖项打包成一个轻量级的容器。这使得在不同环境中部署应用变得简单而一致。此外,GitLab CI/CD提供了一种高效的方法来自动化构建和发布Docker镜像。本文将介绍如何使用GitLab CI构建Docker镜像并为其打上标签。 ## 环境准备 首先,
原创 9月前
148阅读
Android基于AS自动化编译并发送邮件记录[AndroidStudio][6] 自动化编译,并发送邮件出来脚本流程配置编译环境拉取服务器最新的代码(此处可以是git,或者是svn)配置服务器代码为as编译环境的目录结构配置编译版本号版本tag等执行as编译脚本邮件发送结果(邮件内容读取最近一天svnlog日志,as编译版本为附件)环境配置as环境安装 AndroidStudio1.4或以上 p
以gradle举例Gradle和Maven都是项目自动构建工具,编译源代码只是整个过程的一个方面,更重要的是,你要把你的软件发布到生产环境中来产生商业价值,所以,你要运行测试,构建分布、分析代码质量、甚至为不同目标环境提供不同版本,然后部署。整个过程进行自动化操作是很有必要的。整个过程可以分成以下几个步骤:编译源代码 运行单元测试和集成测试 执行静态代码分析、生成分析报告 创建发布版本 部署到目标环境 部署传递过程 执行冒烟测试和自动功能测试如果你手工去执行每一个步骤无疑效率比较低而
原创 2021-06-17 13:42:42
687阅读
以gradle举例Gradle和Maven都是项目自动构建工具,编译源代码只是整个过程的一个方面,更重要的是,你要把你的软件发布到生产环境中来产生商业价值,所以,你要运行测试,构建分布、分析代码质量、甚至为不同目标环境提供不同版本,然后部署。整个过程进行自动化操作是很有必要的。整个过程可以分成以下几个步骤:编译源代码 运行单元测试和集成测试 执行静态代码分析、生成分析报告 创建发布版本 部署到目标环境 部署传递过程 执行冒烟测试和自动功能测试如果你手工去执行每一个步骤无疑效率比较低而
原创 2022-03-27 17:02:53
260阅读
在如今的互联网时代,随着软件开发复杂度的不断提高,软件开发和发布管理也越来越重要。目前已经形成一套标准的流程,最重要的组成部分就是持续集成(ContinuousIntegration,CI)及持续部署、交付(CD)。在此,我们来以一个案例初步了解CI流程。那么什么是CI呢?简单来讲,CI就是将传统的代码合并、构建、部署、测试都集成在一起,不断地执行这个过程,并对结果进行反馈。CI流程设计图:工作流
原创 2019-08-22 14:22:48
2484阅读
1点赞
2评论
来自用户的DevOps实践分享,分享从开发代码到生产环境部署的一条龙操作的实践及经验, 包含工具技术的选型及考量、私有代码库与私有镜像库的应用等。
原创 2017-12-18 14:24:28
3617阅读
在Kubernetes(K8S)中实现CI分布式构建是一种非常常见的需求,尤其是在团队合作开发中。CI(Continuous Integration)是持续集成的缩写,是一种软件开发实践,在这种实践中,团队成员经常集成他们的工作,以便可以快速发现并解决集成错误。同时,分布式构建可以加快构建和部署的速度,提高开发效率。 下面是实现CI分布式构建的一般流程,以及每一步所需要做的事情: | 步骤 |
原创 2024-05-07 11:31:39
100阅读
准备工作1.安装docker(centos7以上版本 或内核在3.10以上版本的linux) 2.准备docker-compose 3.准备jdk和maven tar.gz包 4.gitlab的搭建 可参考5.gitlab runner的镜像(我用的是内网,可选择网络版本) 6.一个jdk的镜像 7.远程ssh工具 (个人用的是 FinalShell)开始搭建1.新建文件mkdir /root/r
转载 2023-07-17 10:25:36
61阅读
上篇已介绍了.netcore项目构建的相关步骤,本篇继续完善 1、什么是CI/CD CI/CD 中的“CI”始终指持续集成,它属于开发人员的自动化流程。成功的 CI 意味着应用代码的新更改会定期构建、测试并合并到共享存储库中。该解决方案可以解决在一次开发中有太多应用分支,从而导致相互冲突的问题。 C ...
转载 2021-09-18 08:55:00
492阅读
2评论
在当今快速发展的软件开发领域,高效地交付高质量的软件产品变得越来越重要。DevOps作为一种文化理念和技术实践,通过加强开发团队与运维团队之间的沟通合作,极大地提高了软件交付的速度和质量。本文将介绍如何利用Jenkins、Docker和Kubernetes这三个工具构建一个完整的CI/CD管道,以实现应用程序的自动化构建、测试和部署。Jenkins:持续集成的核心Jenkins是一个开源的自动化服
原创 精选 10月前
532阅读
上一节我们已经搭建好了本地的Gitlab的代码托管平台。在创建好将要开发的项目后,我们选择是否配置项目CI(Continuous integration 持续集成)。了解CICI与敏捷开发首先,持续集成并不是为了敏捷开发而发明的,或者说本意并不是如此。早在敏捷开发形成思路之前,持续开发就被作为最佳实践(best practice)而运用到对产品质量的监控中了。项目中一般都需要定期的对产品质量进行监
转载 2023-06-29 17:45:55
99阅读
提示:已经更新的或正在更新的文章前面打勾了哈! 文章目录系列文章目录前言一、什么是持续集成?1.持续交付2.持续部署3.实现持续集成二、什么是Jenkins?1.Jenkins的特征2.Docker安装Jenkins总结 前言你有没有想过可以不用手动进行测试,模拟环境中进行自测、可以不用手动发布、部署,自动化实现发布部署、可以不用管开发/测试环境,只用专注代码的开发?学习持续集成,通通帮你实现。一
导读:之前喜欢Davinci的小伙伴儿在安装部署Davinci遇见问题时需要在github issue区等待技术人员的解答。现在不用怕啦,社区热心用户白菜君帮我们支持了docker-composer一键启动,以后只需寥寥几行代码,Davinci就能舒畅的run起来了。还等什么,赶紧部署起来吧~敲重点Davinci Docker原部署教程在这里:https://github.com/edp963/d
  • 1
  • 2
  • 3
  • 4
  • 5