Docker下载 https://www.docker.com/community-edition 社区版 (CE) 下载完后安装,运行 docker --version 可查看版本 基本命令: 下面是一些简单的docker的命令 : 1.docker rm (容器名称或容器ID)   删除docker单个容器 2.docker rm $(docker ps -a -q)           删除docker所有容器 3.docker ps -a                         …
基于docker Docker运行 : docker run -p 8001:80 -d --name name1 name2:1.0 其中-p 8001:80 8001是主机的端口,80是容器的端口 -d表示在后端运行, name1是运行名称,name2是镜像名称“:”后面是版本号 查看运行的容器 docker ps 查看未运行的容器 docker ps -a…
Docker的优点: 1节约时间,快速部署和启动 2节约成本 3标准化应用发布 4方便做持续集成 5可以用Docker做为集群中的轻量主机或节点 6方便构建基于SOA或者微服务架构 的系统 学习目录: 1镜像,容器,与产库 2用Docker学会redis,mysql,mongo,GitLab等运行 3镜像的制作 4数据卷与网络 5.NET Core 自动部署with gitlab ci 6.NET Core自动部署with gitlab ci on docker 7私有仓库构建 8Docker…
在这容器化的世界里,我们已经很少直接通过文件发布来运行asp.net core程序了.现在大多数情况下,我们都会使用docker来运行程序.在使用docker之前,我们往往需要打包我们的应用程序.asp.net core程序的镜像打包,网上有很多教程,其中大多数是使用sdk这个镜像来直接打包.打出来的包有好几百MB,3.1 SDK打出来的包甚至超过了1GB.那么有什么办法来缩小我们打出来的镜像吗?最小能缩小到多少呢?这篇文章就来介绍下如何缩小asp.net core 打包出来镜像的大小. 新建a…
一.前言 最近一直在研究和实践ASP.NET Core.Docker.持续集成.在ASP.NET Core 和 Dcoker结合下遇到了一些坑,在此记录和分享,希望对大家有一些帮助. 二.中间镜像 我前面写过一个 <ASP.NET Core & Docker 零基础持续集成 >的教程.里面我们通过持续集成工具Jenkins构建Docker镜像并运行容器,采用的是Docker Compose来进行编排构建运行的(Visual Studio 2017添加Docker支持是采用的Docker…
本文用图文的方式记录了我自己搭建centos+asp.net core + docker + jexus + nginx的整个过程,希望对有同样需求的朋友有一定的参考作用. 本文主要内容如下: centos7安装 yum镜像 docker镜像 docker安装 dotnetcore安装 Docker安装dotnetcore镜像 asp.net core 创建与发布 docker中部署asp.net core jexus转发 nginx转发 1.centos7安装 a.下载centos的iso文件…
原文:ASP.NET Core & Docker & Jenkins 零基础持续集成实战 一.本系列教程说明 源代码管理工具:Gogs 持续集成工具:Jenkins 容器:Docker 二.git管理软件的选择 没有采用gitlab,因为gitlab比较吃配置,至少得2核4G的配置.采用go语言开发的gogs来代替,搭建方便(不到10分钟就能安装完成),资源消耗低,功能也比较强大,也非常实用.但是在企业开发中(企业买台高配服务器运行gitlab不过分吧,个人就没必要了),个人还是推荐使用…
ASP.NET Core MVC中的Views是负责网页显示,将数据一并渲染至UI包含HTML.CSS等.并能痛过Razor语法在*.cshtml中写渲染画面的程序逻辑.本篇将介绍ASP.NET Core MVC的Views. 之前 ASP.NET Core 2 学习笔记(六)MVC 有稍微介绍到Views及Controller的对应关系,这边就不重复说明. Razor 语法 ASP.NET Core MVC的Views默认是使用Razor引擎,Views的扩展名是用*.cshtml.文件内容以…
Asp.Net Core WebApi学习笔记(四)-- Middleware 本文记录了Asp.Net管道模型和Asp.Net Core的Middleware模型的对比,并在上一篇的基础上增加Middleware功能支持. 在演示Middleware功能之前,先要了解一下Asp.Net管道模型发生了什么样的变化. 第一部分:管道模型 1. Asp.Net管道 在之前的Asp.Net里,主要的管道模型流程如下图所示: 请求进入Asp.Net工作进程后,由进程创建HttpWorkRequest对象…
ASP.NET Core通过路由(Routing)设定,将定义的URL规则找到相对应行为:当使用者Request的URL满足特定规则条件时,则自动对应到相符合的行为处理.从ASP.NET就已经存在的架构,而且用法也很相似,只有些许的不同.本篇将介绍ASP.NET Core的Router Middleware用法. 简单路由 之前 ASP.NET Core 2 学习笔记(三)有介绍到,可以透过Map处理一些简单路由,例如: Startup.cs // ... public class Startu…
Swagger也算是行之有年的API文件生成器,只要在API上使用C#的<summary />文件注解标签,就可以产生精美的线上文件,并且对RESTful API有良好的支持.不仅支持生成文件,还支持模拟调用的交互功能,连Postman都不用打开就能测API.本篇将介绍如何通过Swagger产生ASP.NET Core的RESTful API文件. 安装套件 要在ASP.NET Core使用Swagger需要安装Swashbuckle.AspNetCore套件.通过过.NET Core CLI…
Restful几乎已算是API设计的标准,通过HTTP Method区分新增(Create).查询(Read).修改(Update)和删除(Delete),简称CRUD四种数据存取方式,简约又直接的风格,让人用的爱不释手.本篇将介绍如何通过ASP.NET Core实践REST-Like API. 为什么是REST-Like 而不是 REST? 本文API设计未符合HATEOAS(Hypermedia As The Engine Of Application State)原则,所以不得称为REST…
sql server 关于表中只增标识问题   由于我们系统时间用的过长,数据量大,设计是采用自增ID 我们插入数据的时候把ID也写进去,我们可以采用 关闭和开启自增标识 没有关闭的时候 ,提示一下错误,不能修改 set identity_insert test on  关闭标识 在添加时候 提示成功 set identity_insert 表名  on  关闭 set identity_insert 表名 off   开启 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文…
原文:ASP.NET Core 2 学习笔记(一)开始 来势汹汹的.NET Core似乎要取代.NET Framework,ASP.NET也随之发布.NET Core版本.虽然名称沿用ASP.NET,但相对于ASP.NET确实有许多架构上的差异,可以说除了名称外,已是两个不同的框架. 前言 要开发.NET Core必须要安装.NET Core SDK,所以先到官网下载.NET Core SDK的安装文件,官网下载位置点我. .NET Core作为跨平台的框架,不再像 .NET Framework…
Asp.Net Core 内置IOC容器的理解 01.使用IOC容器的好处 对接口和实现类由原来的零散式管理,到现在的集中式管理. 对类和接口之间的关系,有多种注入模式(构造函数注入.属性注入等). 对实现类的声明周期进行了统一管理(创建.释放.和监控). 对类的依赖有编译时到运行时. 02.实际使用 1.创建控制台项目并添加Nuget包引用 Nuget包:Microsoft.Extensions.DependencyInjection 2.简单使用 class Program { static…
特别声明: 博文主要是学习过程中的知识整理,以便之后的查阅回顾.部分内容来源于网络(如有摘录未标注请指出).内容如有差错,也欢迎指正! =============系列文章============= 1. Docker学习(一): 基本概念 2. Docker学习(二): 镜像的使用与构建 3. Docker学习(三): Dockerfile指令介绍 4. Docker学习(四): 操作容器 5. Docker学习(五): 仓库与数据管理 =============================…
之前写过一个在Asp.Net Core里调用System.Drawing.Common绘图的DEMO,部署到Docker里运行,需要更新Asp.Net Core镜像的操作系统. https://www.cnblogs.com/sunnytrudeau/p/9384620.html 当时用的阿里云的源 RUN echo "deb http://mirrors.aliyun.com/debian wheezy main contrib non-free \ deb-src http://mirror…
前言 在前面文章中,介绍了 ASP.NET Core在 macOS,Linux 上基于Nginx和Jexus的发布和部署,本篇文章主要是如何在Docker容器中运行ASP.NET Core应用程序. ASP.NET Nginx 发布和部署 :http://www.cnblogs.com/savorboard/p/dotnet-core-publish-nginx.html. Asp.Net Jexus 发布和部署:http://www.cnblogs.com/savorboard/p/dot-n…
前言 在前面文章中,介绍了 ASP.NET Core在 macOS,Linux 上基于Nginx和Jexus的发布和部署,本篇文章主要是如何在Docker容器中运行ASP.NET Core应用程序. ASP.NET Nginx 发布和部署 :http://www.cnblogs.com/savorboard/p/dotnet-core-publish-nginx.html. Asp.Net Jexus 发布和部署:http://www.cnblogs.com/savorboard/p/dot-n…
1.新建一个ASP.NET Core MVC应用程序: 2.将其上传到git: 3.建立Jenkins任务 (1)选择"新建任务",输入任务名称,选择"自由风格项目",然后点击确定: (2)选择"源代码管理",填入我们的git地址 输入H/2 * * * *设置两分钟拉取一次 (3)构建环境 勾上 Delete workspace before build start 是设置构建前删除工作区 勾上 Abort the build if it's…
花了一点时间将吃灰数月的树莓派装上了Docker,并在容器中部署了一个Asp.Net Core应用程序,通过花生壳映射树莓派中的程序,可以使用外网访问树莓派,玩起来很有意思(外网访问地址:http://aspnetcore.online/,访问不通可能树莓派断电了),过程中发现了一点问题,或许对于同样路线的朋友有所帮助,特此写出玩转过程. 码云Demo地址:https://gitee.com/530521314/ControlEvent.git 一.树莓派安装操作系统 1.进入官网下载操作系统:…
本文将使用ML.NET创建机器学习分类模型,通过ASP.NET Core Web API公开它,将其打包到Docker容器中,并通过Azure Container Instances将其部署到云中. 先决条件 本文假设您对Docker有一定的了解.构建和部署示例应用程序还需要以下软件/依赖项.重要的是要注意应用程序是在Ubuntu 16.04 PC上构建的,但所有软件都是跨平台的,应该适用于任何环境. Docker Azure CLI .NET Core 2.0 Docker Hub Accou…
1)通过系统自带包安装 通过自带包安装,可能Docker版本较旧 $ sudo apt-get update Reading package lists... Done $ sudo apt-get install -y docker.io {{{-y表示同意.没有-y也可执行,系统会问是否安装,输入y回车即可 apt-get -y install这个指令则是跳过系统提示,直接安装.}}} Adding group `docker' (GID 121) ... Done. docker star…
为什么不用gitlab? 没有采用gitlab,因为gitlab比较吃配置,至少得2核4G的配置.采用go语言开发的gogs来代替,搭建方便(不到10分钟就能安装完成),资源消耗低,功能也比较强大,也非常实用. 关于gogs和gitlab的比较请参考下面的文章: 如何评价Gogs?跟GitLab比起来有何优缺点? 20 天之后由 gitlab 迁移到了 gogs Gogs:可能是比Gitlab更好的选择 教程目录 1.免费HTTPS证书 2.安装Gogs (一个gitserver,类似于gitl…
一.介绍 前一篇,介绍了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…
容器创建 我们已经知道,镜像是只读的,而基于镜像创建出来的容器是可读写的,所以,一般我们实际中,会经常使用对应镜像创建容器并且使用这些容器.同样,如果我们想要使用容器,那么我们必须首先需要创建容器.而且要知道一个镜像可以同时创建多个容器 [root@206 /]# docker run -t -i ubuntu:17.10 /bin/bash -t表示为容器分配一个伪终端 -i容器的标准输出为打开的状态 /bin/bash表示容器运行的地址 再执行一遍,就又创建一个容器 容器的启动 容器的启动主…
本篇将记录.Net Core里颇有特色的结构化配置的使用方法. 相比较之前通过Web.Config或者App.Config配置文件里使用xml节点定义配置内容的方式,.Net Core在配置系统上发生了很大的变化,具有了配置源多样化.更加轻量.扩展性更好的特点. 第一部分.基于键值对的配置 如果要使用结构化配置,需要先引用 "Microsoft.Extensions.Configuration": "1.0.0" nuget包.下面通过一个.Net Core控制台程…
本篇将介绍Asp.Net Core中一个非常重要的特性:依赖注入,并展示其简单用法. 第一部分.概念介绍 Dependency Injection:又称依赖注入,简称DI.在以前的开发方式中,层与层之间.类与类之间都是通过new一个对方的实例进行相互调用,这样在开发过程中有一个好处,可以清晰的知道在使用哪个具体的实现.随着软件体积越来越庞大,逻辑越来越复杂,当需要更换实现方式,或者依赖第三方系统的某些接口时,这种相互之间持有具体实现的方式不再合适.为了应对这种情况,就要采用契约式编程:相互之间依…
在上一篇里,介绍了中间件的相关内容和使用方法.本篇将介绍Asp.Net Core MVC框架的过滤器的相关内容和使用方法,并简单说明一下与中间件的区别. 第一部分.MVC框架内置过滤器 下图展示了Asp.Net Core MVC框架默认实现的过滤器的执行顺序: Authorization Filters:身份验证过滤器,处在整个过滤器通道的最顶层.对应的类型为: AuthorizeAttribute.cs Resource Filters:资源过滤器.因为所有的请求和响应都将经过这个过滤器,所以…
一.虚拟化 1.主机级别虚拟化(两种) a.类型一虚拟化:在硬件上直接安装hyper-ver,然后再安装虚拟机 1).操作系统就两棵树:进程树,文件系统树. 2).一个内核只能有一个root b.类型二虚拟化:在宿主机上安装OS,然后再创建虚拟机 2.容器级别虚拟化 二.docker虚拟化原理 1.需要隔离的资源 a.主机名域名:UTS b.文件系统:Mount c.CPU频率:IPC d.PID:PID为1的为root用户 e.User 用户 f.网络 Net linux内核到今天为止在内核级…