GitlabCI实践 GitLabCI/CD基础概念 为什么要做CI/CD? GitLab CI/CD简介 GitLabCI VS Jenkins 安装部署GitLab服务 GitLabRunner实践 GitlabRunner简介 GitLabRunner安装 GitLabRunner注册 GitLabRunner命令 运行测试流水线任务 GitLabPipeline语法 pipeline syntax 1 pipeline syntax 2 pipeline syntax 3 pipelin…
引言 看过前文的博友可能注意到我是把 部署dll文件拷贝到生产机器,之后在生产机器上使用docker-compose即时创建镜像, 并没有完成CI/CD, 只是在原来传统部署方式下 将部署文件容器化. 经过长时间实操验证,终于完成基于Gitlab的CI/CD实践,本次实践的坑位很多, 实操的过程尽量接近 最佳实践(不做hack, 不做骚操作),记录下来也方便自己加深理解. 第一部分: Gitlab CI/CD 原理 和 Gitlab Runner 安装(这里使用shell执行器) 第二部分: G…
以Spring boot项目为例.传统方式是本地生成jar包,FTP上传服务器,重启服务:如果是内网测试服,也可以在服务器上安装git,在服务器上编译打包.但这都需要人为干预,于是CI/CD就出现了. CI:Continuous Integration(持续集成).自动构建和测试每次提交的代码,以确保所引入的更改符合所有测试.准则和代码合规性标准. CD:Continuous Delivery(持续交付)和Continuous Deployment(持续部署).基于CI,前者侧重于交付给客户或质…
引言 DevOps 是一套实践方法,在保证高质量的前提下缩短系统变更从提交到部署至生产环境的时间,其中持续集成和持续交付是 DevOps 里面非常重要的一环.本文讲述了达到自动化持续交付需要做的准备工作,流水线构建方法和最佳实践. 关于持续交付 持续交付是一组能够帮助软件开发团队极大的提高其软件交付的速度和质量的模式和最佳实践组成.   image.png 不同于低频率发布相对较大的版本,实施持续交付的团队希望比通常更频繁地将更小批量的变更投入生产, 例如每周,每天或一天之内就能够发布多个版本.…
使用Gitlab-CI 实现NetCore项目Docker化并部署到阿里云K8S 先行条件: 1.了解NetCore项目基础命令,如dotnet publish   等几个常用命令. 2.了解Docker基础命令 3.了解centos基础命令 部署步骤: 大致会分为如下几个步骤,后面会详细解析 1.安装 Runner 2.注册 Runner 3.安装Docker环境 4.编写Dockerfile 脚本 5.编写 .gitlab-ci.yml 脚本 6.Push 代码 步骤分解: 1.安装 Run…
昨天发表了<如何用ABP框架快速完成项目 - 自动化测试 - 前端angular e2e protractor>后,大家十分热情,几个小时内就收到了不少问题,包括: 对于ui自动化测试这方面,是不是ui变化了,无论使用何种测试框架,都避免不了重新编写测试用例的代码? 12月的活动是不是只讲angular,不讲MVC了? abp怎么一个人搞定一个项目的? 坐等群主来开DDD培训 按照老师您的文章来做,跑测试时在最后一步捕捉“注销”按钮处失败了. 特别是最后一个问题,证明了这个同学有按照我的文章去…
以下是关于前端项目模块化的实践,包含以下内容: 搭建 NPM 私有仓库管理源码及依赖: 使用 Webpack 打包基础设施代码: 使用 TypeScript 编写可靠类库 使用 TypeScript 的收益 使用 Mocha/Jest 进行单元测试 [实现中] 本文是关于前端项目模板化的第1部分 使用 Docker 搭建私有NPM仓库 关于 Docker 的使用不在本文之中,请自行参考其他文档. 经过测试, keyvanfatehi/sinopia 可用. 将 docker image 拉下来…
目录 简要说明 环境说明 安装前的约定 配置etcd 生成相关证书 证书类型说明 cfssl配置 证书相关配置 生成ca证书 生成kubernetes证书 生成kubectl证书 生成kube-proxy证书 生成token及kubeconfig 生成客户端使用的token 生成bashboard使用的http basic认证文件 生成kubeconfig 部署master 安装 配置 启动 配置haproxy 部署node节点 配置docker 配置quagga 配置kubelet与kube-…
Gitlab-Runner自动构建服务器搭建2 注册Runner 上一节我们创建了自己的gitlab-runner镜像,并使用docker-compose up -d --build命令运行了一个名为gitlab-runner-compose的容器: 1.执行register命令注册runner; docker exec -it gitlab-runner-compose gitlab-runner-andy register 2.输入你自己项目仓库所在gitlab实例的URL: Please…
Kubernetes项目简介 Kubernetes 是 Google 团队发起的开源项目,它的目标是管理跨多个主机的容器,提供基本的部署,维护以及运用伸缩,主要实现语言为 Go 语言.Kubernetes 是: 易学:轻量级,简单,容易理解 便携:支持公有云,私有云,混合云,以及多种云平台 可拓展:模块化,可插拔,支持钩子,可任意组合 自修复:自动重调度,自动重启,自动复制 Kubernetes 构建于 Google 数十年经验,一大半来源于 Google 生产环境规模的经验.结合了社区最佳的想…