一 Web Server(Windows)端的配置

1.配置IIS,重要的是管理服务

  

1.1 配置FTP(前端NPM项目需要)

  该步骤略,如果是在阿里云ESC上,需要开启端口21(用来FTP认证握手)和端口40000-60000(用来上传文件)之间。

2.Net Core与.Net Framework.

  2.1 .NET Core的运行环境还是生产环境还是测试环境取决于系统环境变量 :ASPNETCORE_ENVIRONMENT 有两个值:Development和Production

    .Net Core会根据这个值,自动读取:appsettings.Development.json还是appsettings.Production.json.

3.安装WebDeploy.确保相关服务启动

4 网站启动部署

二 使用VS创建发布文件与配置转换

1.Asp.net MVC

2.Asp.net Core

  依赖appsettings.Development.json与appsettings.Production.json

三 配置Windows下的TeamCity

1 安装TeamCity

  略,但是尽量安装在空间大的盘符上.

2 安装其他组件

  2.1 .Net CoreSDK

  2.2 Visual Studio 2017

  2.3 Node.js

3 asp.net MVC 发布参数

  3.1 restore 同asp.net Core相同

  3.2 build 同asp.net core相同

  3.2 publish

    

    

    /p:PublishProfile=测试环境.pubxml
    /p:DeployOnBuild=true
    /p:DeployTarget=MSDeployPublish
    /p:Configuration="Debug"
    /p:FilesToIncludeForPublish=AllFilesInProjectFolder
    /p:ProfileTransformWebConfigEnabled=True
    /p:MsDeployServiceUrl=https://对方服务器IP:8172/msdeploy.axd
    /p:DeployIisAppPath=要发布的网站在IIS上的名字.
    /p:username=对方服务器用户名(麻烦的话直接用管理员账号把,或者专门配置一个账号,看安全需要)
    /p:password=该账号密码密码
    /p:AllowUntrustedCertificate=true

4 aps.net Core 发布参数

  4.1 restore

    

  4.2 build

    

  4.3 publish

    

    /p:PublishProfile=CustomProfile.pubxml
    /p:DeployOnBuild=true
    /p:DeployTarget=MSDeployPublish
    /p:Configuration="Debug"
    /p:FilesToIncludeForPublish=AllFilesInProjectFolder
    /p:MsDeployServiceUrl=https://对方服务器IP:8172/msdeploy.axd
    /p:DeployIisAppPath=要发布的网站在IIS上的名字.
    /p:username=对方服务器用户名(麻烦的话直接用管理员账号把,或者专门配置一个账号,看安全需要)
    /p:password=该账号密码密码
    /p:AllowUntrustedCertificate=true

5 Vue npm打包并自动发布

  5.1 npm install

  

  5.2 npm install cross-env(如果提示该组建缺失在增加此步骤,否则直接到npm build环节即可)

    

  5.3 npm install css-loader(如果提示该组建缺失在增加此步骤,否则直接到npm build环节即可)

    

  5.4 npm build

    

  5.5 publish(基于FTP进行发布)

    

    因为npm打包后,会放到dist目录里,所以我这里选择dist目录进行上传

** 目前这个方法有2个主要缺陷:

  1 是会删除服务器上该网站下的所有文件,尝试过使用PS调用webdeploy命令进行发布,但是PS总是引号出错,遂放弃.目前测试环境已经够用,生产要慎重.

  2 没有做版本管理,发布后,没法办做版本回退.

基于TeamCity的asp.net mvc/core,Vue 持续集成与自动部署的更多相关文章

  1. 简述C#中IO的应用 RabbitMQ安装笔记 一次线上问题引发的对于C#中相等判断的思考 ef和mysql使用(一) ASP.NET/MVC/Core的HTTP请求流程

    简述C#中IO的应用   在.NET Framework 中. System.IO 命名空间主要包含基于文件(和基于内存)的输入输出(I/O)服务的相关基础类库.和其他命名空间一样. System.I ...

  2. ASP.NET MVC Core的TagHelper(基础篇)

    TagHelper又是一个新的名词,它替代了自之前MVC版本的HtmlHelper,专注于在cshmlt中辅助生成html标记. 通过使用自定义的TagHelper可以提供自定义的Html属性或元素, ...

  3. 基于Bootstrap的Asp.net Mvc 分页

    基于Bootstrap的Asp.net Mvc 分页的实现 最近写了一个mvc 的 分页,样式是基于 bootstrap 的 ,提供查询条件,不过可以自己写样式根据个人的喜好,以此分享一下.首先新建一 ...

  4. .NET CORE学习笔记系列(1)——ASP.NET MVC Core 介绍和项目解读

    ASP.NET MVC Core 项目文件夹解读 一.项目文件夹总览 1.1.Properties——launchSettings.json 启动配置文件,你可以在项目中“Properties”文件夹 ...

  5. ASP.NET Core 1.0、ASP.NET MVC Core 1.0和Entity Framework Core 1.0

    ASP.NET 5.0 将改名为 ASP.NET Core 1.0 ASP.NET MVC 6  将改名为 ASP.NET MVC Core 1.0 Entity Framework 7.0    将 ...

  6. [转帖]2016年时的新闻:ASP.NET Core 1.0、ASP.NET MVC Core 1.0和Entity Framework Core 1.0

    ASP.NET Core 1.0.ASP.NET MVC Core 1.0和Entity Framework Core 1.0 http://www.cnblogs.com/webapi/p/5673 ...

  7. ASP.NET MVC Core的TagHelper (高级特性)

    这篇博文ASP.NET MVC Core的TagHelper(基础篇)介绍了TagHelper的基本概念和创建自定义TagHelper的方式,接着继续介绍一些新的看起来比较高级的特性.(示例代码紧接着 ...

  8. ASP.NET MVC Core Starter Kit

    上一篇博文<创建.NET Core程序的Nuget Package>提到准备创建一个Nuget包,用于自动生成一个简单的ASP.NET MVC Core的示例项目.本来是打算用Nuget实 ...

  9. 基于C#和Asp.NET MVC开发GPS部标视频监控平台

    基于C#和Asp.NET MVC开发GPS部标监控平台 目前整理了基于.NET技术的部标平台开发文章,可以参考: 1.部标Jt808协议模拟终端的设计和开发 2.C#版的808GPS服务器开发-> ...

随机推荐

  1. openvpn-monitor openvpn-server的监控插件

    项目地址 https://github.com/furlongm/openvpn-monitor

  2. Golang源码探索(二) 协程的实现原理(转)

    Golang最大的特色可以说是协程(goroutine)了, 协程让本来很复杂的异步编程变得简单, 让程序员不再需要面对回调地狱,虽然现在引入了协程的语言越来越多, 但go中的协程仍然是实现的是最彻底 ...

  3. cmake安装

    下载之后 1.解压 root@zsh-linux:/opt#tar -zxvf  cmake-2.8.4.tar.gz 2.然后 cd 到cmake-2.8.4目录下  安装 root@zsh-lin ...

  4. MPC学习笔记1:基于状态空间模型的预测控制(2)

    基于估计的无约束预测控制 1.引言 基本上这两个部分都是在线性理论的框架下,利用状态空间法来建模.求解控制律.状态空间模型在理论分析上具有很强的优越性,但实际应用中能直接准确且经济地获取系统状态并不容 ...

  5. Lock和Static使用说明和区别

    private static object lockInsertObj = new object(); lock (lockInsertObj){--写代码} 1.静态方法与非静态方法 a.静态方法的 ...

  6. Neural Network Virtual Machine

    深度学习Stack 为什么提出NNVM? 深度学习框架现状 - “碎片化” 目前,深度学习应用框架呈现出高度的“碎片化(fragmentation)”倾向,这主要是由于下述两个原因: 1. 深度学习正 ...

  7. github 绑定域名

    github的域名其实就两种,一种是个人主页,即所谓的每个账号只有一个的个人主页,XXXX.github.io,分支是master: 另一种是项目主页,可以有无数个,网上说分支应该是gh-pages, ...

  8. Visual Studio Enterprise 2019序列号

    Visual Studio Enterprise 2019序列号:BF8Y8-GN2QH-T84XB-QVY3B-RC4DF Visual Studio Professional 2019序列号:NY ...

  9. 高性能mysql 事务笔记

    事务的四大特性原子性.一致性.隔离性.持久性, 事务隔离的四大隔离级别: READ UNCOMMITTED(未提交读), 在 read uncommitted级别,事务中的修改,及时没有提交,对其他事 ...

  10. systemverilog soft constraint

    1.class my_item; rand bit constrainted_random; rand bit usually_one; endclass class my_generator; my ...