jenkins部署net core初探
一步一步,小心翼翼吖。看了好几个博客,摸索了两天了,才搭建成功,不容易,先写篇文章记下来,hhhhhhhhhhhh
相关环境配置
服务器:centos7
源代码管理器:git
技术选型:net core 2.1
在centos上如何安装jenkins已经在上一篇博文中讲解了,这里就继续说如何在jenkins界面化工具上进行构建net core了。
1.新建一个自由风格的软件项目

2.源码管理里选git,然后填上git里的项目地址,注意要是https地址哦!

案例中的项目地址我直接发出来:https://github.com/lovemoqing/Test_Jenkins.git ,如果有和我一样的萌新需要学习可以直接使用我这个
3.构建触发器

我选的是定时构建,15分钟一次,右边的问号点开以后会有更多描述,可以帮助理解。我的命令就是从描述里找的。
4.构建环境

每次构建前删除工作区,构建的超时时间设置为10分钟。
5.构建命令

我这里选择的是执行shell,填写的命令如下:
dotnet restore
dotnet build
dotnet publish
以上是jenkins的构建部分,填好shell命令以后点保存即可。
别慌,这个时候点立即构建不一定会成功!下面说一下为什么,这也是笔主踩了坑,所以要记下来的原因!
1.服务器上要安装有git,不然在填写源码管理里的URL的时候会提示错误。
2.服务器上要有net core的运行环境,所以之前没有安装过.NET SDK的话,一定要Install一下~ 不然构建是不成功的,笔主就是忘了安装这个,在构建的时候看到控制台的错误输出才想起这个没有安装。(当然也和笔主经常换云服务器的系统盘有关,经常遇到各种不好解决的问题就初始化磁盘,然后推倒重来,(*/ω\*) 所以很多环境之前安装过后来又没有了。这里补一下.NET SDK的安装说明:https://www.microsoft.com/net/learn/dotnet/hello-world-tutorial )
然后还有坑啊,没完~ 上面按照流程操作以后构建是可以成功的!但是由于笔主的服务器环境啥也有没有,访问ip的时候并没有看到项目,加上80端口也不行,原来是项目没有启动导致的,于是看了一下控制台的日志:

可以看到最后一行的Success表示构建是成功的,并且路径已经给出来了,我们在服务器端cd一下路径,然后执行命令 dotnet Test_Jenkins.dll,项目就运行起来了,执行命令的时候出现下图表示启动成功:

然后笔主接着就是访问了,嗯? 网站打不开!哦,想起来了端口5000还没映射到80上, 于是想起来需要Nginx代理一下,由于之前玩过,所以轻车熟路,安装一下Nginx,进行配置即可,这里不详细说明,具体如何配置可以参考文章底部给出的参考资料。
Nginx安装配置好了重启以后就生效了,输入服务器ip,直接就能访问,由于是将端口5000映射到了80,所以访问的时候直接ip就能访问。
目前就讲完了,后面如果想不关闭命令窗口项目依然能访问的话,就需要配置守护者进程,这个在参考资料里有详细说明,就不再赘述。
下面是部署成功后的画面,美如画吖~

参考资料
https://www.jianshu.com/p/1d4f7942dd42 dotnet core 搭建持续集成环境
https://www.cnblogs.com/esofar/p/8043792.html CentOS 7 部署 ASP.NET Core 应用程序
https://www.cnblogs.com/chuancheng/p/8933057.html Centos7 & Docker & Jenkins & ASP.NET Core 2.0 自动化发布和部署
https://www.microsoft.com/net/learn/dotnet/hello-world-tutorial Install the .NET SDK
以上前三篇博文是经过长期阅读、实践得出来的几篇优秀的博文, 对.net core感兴趣的萌新可以阅读一下,都是实战教程性质的文章,干货满满!
本次的讲解就到这里了,上述构建项目的过程还有很多不完善的地方, 欢迎大家指出以及交流。
jenkins部署net core初探的更多相关文章
- Jenkins部署net core小记
作为一个不熟悉linux命令的neter,在centos下玩Jenkins真的是一种折磨啊,但是痛并快乐着,最后还是把demo部署成功!写这篇文章是为了记录一下这次部署的流程,和心得体会. 网上很多资 ...
- 使用Jenkins部署.Net Core遇到的几个坑
搞过CI/CD的同学一定吃过不少苦头,或者说遇到不少坑,但是对自动化的执着住挡不了前进的步伐,如果你缺少了运维这一块知识,那么你的流水线总是不那么完美,本文记录的是自己躺过的坑,希望对你有所帮助. 一 ...
- .Net Core 自动化部署:使用jenkins部署到linux docker容器运行
上次我们说到.Net Core 自动化部署:使用docker版jenkins部署dotnetcore应用,这次我们使用jenkins发布我们的.NET Core站点到docker容器中运行,为后面的的 ...
- .Net Core 自动化部署:使用docker版jenkins部署dotnetcore应用
安装docker版jenkins 因为jenkins的docker版本本身没有 dotnetcore的环境,所以我们需要先自己动手制作下包含dotnet环境的jenkins Docker Contai ...
- Jenkins 流水线远程部署 .NET Core/Framework 到 IIS
目录 Windows 安装 Git WebDeploy Windows 从节点 .NET Core 处理 IIS 处理项目 Jenkinsfile .NET Framework 安装环境 .NET F ...
- 【k8s实战一】Jenkins 部署应用到 Kubernetes
[k8s实战一]Jenkins 部署应用到 Kubernetes 01 本文主旨 目标是演示整个Jenkins从源码构建镜像到部署镜像到Kubernetes集群过程. 为了简化流程与容易重现文中效果, ...
- Jenkins部署配置简介
前段时间研究了一下自动化测试,因而接触到了Jenkins,今天有时间进行一下Jenkins部署配置相关知识的总结分享 前言:由于本次只是实验性研究,采用Windows环境,因此Jenkins可以通过下 ...
- IIS上部署Net.Core
部署: 1.安装vc_redist.x64vc_redist.x64 2.安装DotNetCore.1.0.0.RC2-WindowsHosting 3.安装DotNetCore.1.0.0-SDK. ...
- win2008server R2 x64 部署.net core到IIS上出现【Failed to load the dll from [C:\Program Files\dotnet\host\fxr\1.0.1\hostfxr.dll], HRESULT: 0x80070057】错误
win2008server R2 x64 部署.net core到IIS上出现[Failed to load the dll from [C:\Program Files\dotnet\host\fx ...
随机推荐
- 使用Advanced Installer制作IIS安装包(二:配置安装包依赖项和自定义dll)
前言:上篇使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)介绍了下使用Advanced Installer配置IIS和Web.config的过程,操作起 ...
- [Go] golang的竞争状态
1.goroutine在逻辑处理器的线程上进行交换 2.竞争状态:两个或者多个goroutine在没有互相同步的情况下,访问某个共享的资源,并试图同时读和写这个资源,就处于互相竞争的状态对共享资源的读 ...
- Android安全–Dex文件格式详解
Dex文件是手机上类似Windows上的EXE文件,dex文件是可以直接在Dalvik虚拟机中加载运行的文件. 首先我们来生成一个Dex文件. 新建文件Hello.java内容如下: class He ...
- Linux设置Swap虚拟内存方法
linux可以文件或者分区来当作虚拟内存. 首先查看当前的内存和swap 空间大小(默认单位为k, -m 单位为M): free -m 查看swap信息,包括文件和分区的详细信息 swapon -s或 ...
- localhost和127.0.01 区别
笔者最近调试程序时遇到的一个问题,localhost不能访问但127.0.0.1可以访问. 一.原理 我估计大多数人都不会去想localhost到底与127.0.0.1有什么不同,就比如我,有时候用h ...
- 设计模式之代理模式(Proxy)(2)
代理模式是为其他对象提供一种代理以控制对这个对象的访问.在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用,其特征是代理类与委托类有同样的接口. ...
- JavaScript 的 4 种数组遍历方法: for VS forEach() VS for/in VS for/of
我们有多种方法来遍历 JavaScript 的数组或者对象,而它们之间的区别非常让人疑惑.Airbnb 编码风格禁止使用 for/in 与 for/of,你知道为什么吗? 这篇文章将详细介绍以下 4 ...
- [笔记]原生JS实现的DOM操作笔记
原生JS实现的DOM一系列操作参考: 原生JavaScript封装DOM库 siblings: 原生JS-查找相邻的元素-siblings方法的实现 addClass,removeClass,hasC ...
- C语言检测指定文件是否存在的代码
内容之余,将做工程过程中比较常用的一些内容片段珍藏起来,下面资料是关于C语言检测指定文件是否存在的内容,希望能对小伙伴们有所用. #include <stdbool.h> #include ...
- 精简你的 docker 镜像
精简你的 docker 镜像 Intro 现在 docker 的使用越来越普遍,今天来谈一下如何精简你的 docker 镜像 为什么要精简 docker 首先来说说为什么要精简 docker 镜像,减 ...