前言:因为找了B站内推,测试开发,正好知道内部使用GitLab做自动化测试,所以简单学了一下,有错误的地方请指正. 入门 初始化 cp: 无法获取'/root/node-v12.9.0-linux-x64' 的文件状态(stat): 权限不够 原因:源地址或目标地址有问题 E212:无法打开并写入文件 原因:权限不够;解决:从root权限终端打开sudo su 安装启动Nginx: # 启动 nginx # 停止 nginx stop # 安全退出 nginx -s quit # 重新加载配置文…
基于 Docker 和 GitLab 的前端自动化部署 实践笔记 随着接触的项目越来越多,在部署测试流程上重复耗时工作也越来越多,所以对前端工作的CI/CD实现愈发迫在眉睫. 前端开发由于三大框架的崛起,基于 webpack 的自动化构建被广大开发者所熟识.而一整套 DevOps 工作流包括 Auto Build.Auto Test.Auto Code Quality.Auto Deploy 等,这里主要是解决 Auto Deploy 部分. 主要实现思路是,指定部署分支,比如 master,每…
想必大家之前在进行ASP.NET Web 应用程序开发期间都有用到过将我们的网站部署到IIS自定义主机域名并附加到进程进行调试. 那我们的ASP.NET Core Web 应用程序又是如何部署到我们的IIS上面进行调试的呢,接下来我们来简单介绍下: 一.安装IIS所需的Host扩展(Windows Server Hosting) 下载地址:https://dotnet.microsoft.com/download/dotnet-core/2.2 或者从百度网盘获取: 链接:https://pan…
目录 一.说明 二.成品展示 三.前期准备 本地安装 node.js 本地安装 git github 账号 创建仓库 travis ci 账号 四.安装 Hexo 五.使用 hexo 搭建博客 六.部署到 github pages 七.使用 travis ci 进行自动化部署 小结 一.说明 本系列文章将会详细说明使用 Hexo + github pages 来搭建个人博客,并对主题进行配置,然后使用 travis ci 来进行自动化部署的全过程. 搭建一个赏心悦目的博客,写文章和阅读也会更加舒…
之前写过使用Jenkins实现自动化部署,最近正好没事研究了下GitLab的自动化部署,顺便记录一下. 使用GitLab部署我们需要准备两件事,第一个起码你得有个GitLab,自己搭建或者使用官方的都可以哈,我这里使用的官方的,想自己搭建的同学可以参考下这篇,使用Docker搭建GitLab: https://www.imooc.com/article/23168 有了GitLab之后我们还需要自己安装部署GitLab Runner,GitLabRunner是用来拉取GitLab仓库的代码,并根…
一.介绍 前一篇,介绍了ASP.NET Core部署到K8S上,下面介绍我们在发布新一版本中怎么通过Gitlab CI自动给镜像打版本并部署到K8S上. 二.我们通过GitLab CI/CD 变量 不废话,先上代码: stages: - build - test - package - deploy - release build: stage: build script: - cd Deploy.API - dotnet build test: stage: test script: - do…
写在前面 在前段时间尝试过用Jenkins来进行asp.net core 程序在IIS上面的自动部署.大概的流程是Jenkins从git上获取代码 最开始Jenkins是放在Ubuntu的Docker中,但是由于Powershell执行的原因,就把Jenkins搬到了windows上.因为我们网站的部署需要停掉IIS站点,所以需要Powershell来远程操作服务器(上传文件,停止站点,启动站点),也很顺利的利用WinRM+Powershell脚本实现了上面的功能,但是最后在实际使用中发现,脚本…
0.前言 应许多网友的要求,特此录制一下k8s集群部署的视频.在录制完成后发现视频的声音存在一点瑕疵,不过不影响大家的观感. 一.视频说明 1.视频地址: 如果有不懂,或者有疑问的欢迎留言.视频分为两段. 第一段:k8s集群部署01: 地址:https://www.bilibili.com/video/av34292683/?p=1 第一段:k8s集群部署02: 地址:https://www.bilibili.com/video/av34292683/?p=2 asp.net core 交流群:…
环境说明 一台git服务器(192.168.169.7),安装gitlab,docker. 一台web服务器(192.168.169.6),安装git,gitlab runner,docker,dotnet sdk. 为了方便讲述,给两台服务器取个别名吧,7酱和6酱…
在现代化开发工具链里面就包含了自动化的通讯工具,而日志写代码我是推到 Gitlab 平台上,我今天听了郭锐大佬的分享之后,感觉我现在的团队的自动化做的远远不够.我在他的课程上学到的最重要一句话就是做工具不是从零到一最难,有很多非常厉害好用的工具最后都没用上的原因是没有加入到开发链条上.所以我用最简单的工具做实践,在 Gitlab 上的代码审查每次都需要自己手动将代码审查链接发给对应的审查者,这样的效率很低,于是我就打通了通讯工具和代码平台之间的联系,开始一步步打造适合自己团队的工具 这只是一个简…
上一篇介绍了Asp.Net 程序在Docker中的部署,这篇介绍使用Nginx对Docker的实例进行反向代理 一.修改Nginx配置文件 使用winscp链接Liunx服务器,在/ect/nginx目录下找到nginx.conf配置文件 打开配置文件,更改Server节点内的配置 listen节点指定监听端口 server_name   指定域名 location配置反向代理:{ proxy_pass 指定本地程序的运行端口 } 剩下的直接Copy上文红框的内容即可,我再下面贴出来 serve…
导言 本次测试用的是gitlab-ci,单纯与gitlab搭配而言,gitlab-ci较jenkins更加一体,顺畅. 主机1:192.168.100.151 gitlab 主机2:192.168.100.156 gitlab-ci 步骤 主机1,2都安装docker 主机1安装gitlab并启动服务,并且新建一个group,再新建一个project,从这个地址复制过来一个简单的测试python程序 主机2安装gitlab runner并启动 主机2注册gitlab runner并生成tags…
一.安装CentOs 以前在大学学过linux,但是对命令行总是有一种深深的排斥感,几年之后,还是又回来了. 1.下载 现在没法FQ,就算是FQ网速也是蜗牛一样慢,我使用阿里云的镜像站进行下载速度还是杠杠的. 我使用的镜像地址是 https://mirrors.aliyun.com/centos/7.4.1708/isos/x86_64/CentOS-7-x86_64-DVD-1708.iso ,可以根据自己需要去下载,总目录地址:https://mirrors.aliyun.com/cento…
    前言 程序运行中会出现各种BUG. 排除BUG有三种方式. 一.访问页面直接报错误信息 出于安全,服务器是关闭这个功能的.在centos上可以用 命令设置环境变量来解决:   export ASPNETCORE_ENVIRONMENT=Development 二.console输出 console.WriteLine(" hello"); 三.日志 使用组件 NLog.Web.AspNetCore 来实现 写入文件.console.db.email等 https://githu…
前几篇文章介绍了Liunx下的环境搭建,今天来分享一下.Net Core在Liunx上的部署. 我采用的方案是使用Dokcer作为运行虚拟机,Nginx作为Http服务器来进行反向代理,你可以理解为Docker就是程序的运行环境,而Nginx就是之前用的IIS. 文章分成两篇,第一篇写Docker部署,第二篇写Nginx代理. 一.编写Dockerfile Dockerfile中记录了我们的程序在Docker环境中的各种配置 FROM microsoft/dotnet #FROM 指定功能所需的…
自动化CodeReview系列目录 自动化CodeReview - ASP.NET Core依赖注入 自动化CodeReview - ASP.NET Core请求参数验证 参数验证实现 在做服务端开发时经常需要对客户端传入的参数进行合法性验证,在ASP.NET Core中通常会使用如下方式: public class LoginModel { [Required(ErrorMessage = "账号不能为空")] public string Account { get; set; }…
================================================================================================================================================ 需求: 1.已经启动了jenkins[https://www.cnblogs.com/sxdcgaq8080/p/10489369.html] 2.已经启动了gitlab[https://www.cnblogs…
相关文章: Ubuntu Docker 简单安装 GitLab 劈荆斩棘:Gitlab 部署 CI 持续集成 目的:在 Ubuntu 服务器上,使用 Docker 安装和配置 GitLab Runner,搭建 GitLab CI 持续集成环境. 服务器版本 Ubuntu 16.04 LTS. 安装命令: $ docker run -d --name gitlab-runner --restart always \ -v /srv/gitlab-runner/config:/etc/gitlab-…
最近在公司实践持续集成,使用到了Jenkins的Pipeline来提高团队基于ASP.NET Core API服务的集成与部署效率,因此这里总结一下. 一.关于持续集成与Jenkins Pipeline 1.1 持续集成相关概念 互联网软件的开发和发布,已经形成了一套标准流程,最重要的组成部分就是持续集成(Continuous integration,简称 CI) . 持续集成指的是,频繁地 (一天多次) 将代码集成到主干. 它的好处主要有两个: (1)快速发现错误.每完成一点更新,就集成到主干…
asp.net core参数保护之自定义要保护的参数类型 Intro 为了实现 asp.net core 下的参数保护,扩展了asp.net core 中 DataProtection,可以自动化的保护某些敏感参数,上次推出之后有一些小伙伴反馈希望能保护 JsonResult 返回的参数,本文主要以 JsonResult 为例介绍如何注册自定义类型 基本使用 首先需要安装 nuget 包 WeihanLi.DataProtection 在 Startup 中注册 ParamsProtection…
CI / CD方法简介 软件开发的持续集成基于自动执行脚本,以最大限度地减少在开发应用程序时引入错误的可能性.从新代码的开发到部署,它们需要较少的人为干预甚至根本不需要干预. 它涉及在每次小迭代中不断构建,测试和部署代码更改,从而减少基于有缺陷或失败的先前版本开发新代码的风险. 这有三种主要方法,每种方法都根据最适合您的策略进行应用. 持续集成(Continuous Integration, 简称CI) 考虑一个应用程序,其代码存储在GitLab中的Git存储库中.开发人员每天多次推送代码更改.…
一.关于这个系列 自从2018年底离开工作了3年的M公司加入X公司之后,开始了ASP.NET Core的实践,包括微服务架构与容器化等等.我们的实践是渐进的,当我们的微服务数量到了一定值时,发现运维工作量已将增加了很多,因此容器编排引擎的需求也随之产生(虽然我们一直都知道K8S的必要性).同时,在张队发的<.NET云原生采用情况调查>中已经表明,容器编排和自动化领域Kubernetes已经占据了主体地位,学习Kubernetes刻不容缓! 所以,我将K8S的入门学习放到了2019年的学习列表中…
使用Linux.Nginx和Github Actions托管部署ASP.NET Core 6.0应用 前言 本文主要参考微软这篇文档而来 Host ASP.NET Core on Linux with Nginx,并使用Github Actions做CI&CD,部署到阿里云服务器,所有步骤均亲测可用. 你需要有 Linux云服务器(本文使用的是阿里云Ubantu 22.04 64位) SSH客户端(我使用的XShell, 官网 可以下载免费的家庭/学校版) Github账号以及能流程访问^ 项目…
原文 ASP.NET Core on Nano Server 作者 Sourabh Shirhatti 翻译 娄宇(Lyrics) 校对 刘怡(AlexLEWIS).许登洋(Seay).谢炀(kiler).孟帅洋(书缘) 注意:本教程使用 Windows Server Technical Preview 5 的预发行版本的 Nano Server 安装选项. 你可以在虚拟硬盘映像中用来内部演示和评估,但不能在生产环境中使用该软件.可通过 https://go.microsoft.com/fwli…
前言 在上篇文章中,主要介绍了 Dotnet Core Run 命令,这篇文章主要是讲解如何在Linux中,对 Asp.Net Core 的程序进行发布和部署. 有关如何在 Jexus 中进行部署,请参见本人的另一篇文章: http://www.cnblogs.com/savorboard/p/dot-net-linux-jexus.html 目录 新建一个 WebApp 项目 发布到 Linux,Mac OS 使用 Nginx 进行反向代理 新建一个 WebApp 项目 在 Asp.Net C…
0x00 很早之前就想体验一把持续集成的快感,然后刚好手头上有个 asp.net core 的项目,就想来部署一下持续集成.一开始我是想用 Jenkins 的,弄了好半天,git 仓库没法同步下来,我就放弃了,然后发现 JetBrains 家的 TeamCity 官方出了一个 dotnet core plugin,简直不要太方便.果然,很快,我就实现了持续构建的功能,下面是操作方法. 0x01安装 TeamCity 先去 TeamCity 的官网下一个 Windows 的安装包,因为我用的是 w…
上篇讲了asp.net core在linux上的环境部署.今天我们将做几个小玩意实战一下.用到的技术和工具有mysql.websocket.AngleSharp(爬虫html解析).nginx多站点部署. NO1 留言板(mysql的使用) 演示:http://haojima.net 这个功能很简单.就是对数据库的写入和展示.如果在Windows下,相信大家分分钟都可以搞定.而初次接触.net core + mysql可能需要注意些细节. 首先打开vs2017新建一个asp.net core项目…
大家在使用ASP.NET的时候一定都用过FormsAuthentication做登录用户的身份认证,FormsAuthentication的核心就是Cookie,ASP.NET会将用户名存储在Cookie中. 现在到了ASP.NET CORE的时代,但是ASP.NET CORE中没有FormsAuthentication这个东西,那么怎么做身份认证呢?答案是ASP.NET CORE已经为我们内置了Cookie身份认证的功能,而且使用起来非常方便,注意本文是基于ASP.NET CORE 2.0版本…
----------------------------   以下内容针对 ASP.NET Core2.1,2.2出现IIS进程内寄宿 暂不展开讨论-------------------------- 相比ASP.NET,ASP.NET Core 2.1出现了3个新的组件:ASP.NET Core Module.Kestrel.dotnet.exe, 后面我们会理清楚这三个组件的作用和组件之间的交互原理. ASP.NET Core 设计的初衷是开源跨平台.高性能Web服务器,ASP.NET Co…
上篇讲了<asp.net core在linux上的环境部署>.今天我们将做几个小玩意实战一下.用到的技术和工具有mysql.websocket.AngleSharp(爬虫html解析).nginx多站点部署. NO1 留言板(mysql的使用) 演示:http://haojima.net 这个功能很简单.就是对数据库的写入和展示.如果在Windows下,相信大家分分钟都可以搞定.而初次接触.net core + mysql可能需要注意些细节. 首先打开vs2017新建一个asp.net cor…