asp.net core 发布到linux下Docker
1.linux Docker 安装
内核升级:https://www.cnblogs.com/zksfyz/p/7919425.html
安装: https://www.runoob.com/docker/centos-docker-install.html
2.发布asp.net core
网上大部分教程都是采用编写Dockerfile文件的方法,然后打包程序到一个新镜像中,而我不用这种方法。我这里直接通过docker运行本地程序。
1、拉取镜像文件
拉取微软官方aspcore runtime镜像文件,执行“docker pull microsoft/dotnet:aspnetcore-runtime”,注意这里使用的是带“aspnetcore-runtime”TAG的镜像,这个镜像才有runtime。如果需要拉取特定的版本,比如2.1版本,可以用“docker pull microsoft/dotnet:2.1-aspnetcore-runtime”这样的写法,更多说明见https://hub.docker.com/r/microsoft/dotnet
拉取成功后通过“docker images”来查看
2、发布程序
注意部署模式改为“框架依赖”,目标运行时改为“可移植”。发布成功后将文件拷贝到服务器上,比如我放在“/home/www”下面。
最后执行“docker run -d -p 5000:80 -v /home/www:/app --workdir /app microsoft/dotnet:aspnetcore-runtime dotnet /app/MyServer.dll”,服务器就能跑起来了!
-d参数表示容器在后台运行,我们不需要进入到容器。
-p参数表示端口映射,“-p 5000:80”表示将容器的80端口映射到本地5000端口。
-v参数表示目录映射,将服务器的/home/www目录挂到容器的/app目录。
--workdir参数表示容器中服务程序的工作路径,也就是我们映射的/app目录。
“microsoft/dotnet:aspnetcore-runtime”表示要运行的镜像。
最后的"dotnet /app/MyServer.dll"表示容器启动后要执行的命令,这里也就是启动服务程序了,MyServer.dll是我的主程序文件名,你们修改为自己的即可。
最后可以通过"docker ps"来查看正在运行中的容器。
asp.net core 发布到linux下Docker的更多相关文章
- ASP.NET Core 发布至Linux生产环境 Ubuntu 系统
ASP.NET Core 发布至Linux生产环境 Ubuntu 系统,之前跟大家讲解了 dotnet publish 发布,而没有将整个系统串起来. 今天就跟大家综合的讲一下ASP.NET Core ...
- 将自己的SpringBoot应用打包发布到Linux下Docker中
目录 将自己的SpringBoot应用打包发布到Linux下Docker中 1. 环境介绍 2. 开始前的准备 2.1 开启docker远程连接 2.2 新建SpringBoot项目 3. 开始构建我 ...
- .Net Core发布到Linux下验证码失效处理方案详解
.net Core 部署到在 CentOS7下后,验证码打不开,报The type initializer for 'Gdip' threw an exception.异常 运行含图片处理时发生异常: ...
- asp.net core发布到linux
在发布到linux的过程中出现两个问题现在总结一下: 我的虚拟机是安装到本机上面的,所以,应该在虚拟机的设置里面设置端口映射.具体设置如下: 选择vm上方的编辑 在弹出的框中选择VMnet8,点击下方 ...
- ASP.NET Core 发布到Linux需要注意的地方
此文持续更新. 读取本地目录的问题, 在windows下,一般会用“\”,但在Linux中用的是“/” 待续..
- Core 发布至Linux
ASP.NET Core 发布至Linux生产环境 Ubuntu 系统 ASP.NET Core 发布至Linux生产环境 Ubuntu 系统,之前跟大家讲解了 dotnet publish 发布,而 ...
- 将 ASP.NET Core 1.0 应用作为 docker 镜像发布 (Linux版)
var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...
- Asp.Net Core 发布到 Docker(Linux Centos 虚拟机,使用Dockerfile)
实践一下 Asp.Net Core (基于.net core 2.2)部署到Docker 一.准备工作: 1. 使用Virtualbox创建一个Centos系统的虚拟机,并安装docker和vim 2 ...
- ASP.NET Core MVC 在linux上的创建及发布
前言 ASP.NET core转眼都发布半月多了,社区最近也是非常活跃,虽然最近从事python工作,但也一直对.NET念念不忘,看过了园区大神们搭建的Asp.net core项目之后,自己也是跃跃欲 ...
随机推荐
- Java自学-多线程 线程安全的类
Java常见的线程安全相关的面试题 步骤 1 : HashMap和Hashtable的区别 HashMap和Hashtable都实现了Map接口,都是键值对保存数据的方式 区别1: HashMap可以 ...
- 面试官:你用过mysql哪些存储引擎,请分别展开介绍一下
这是高级开发者面试时经常被问的问题.实际我们在平时的开发中,经常会遇到的,在用SQLyog等工具创建表时,就有一个引擎项要你去选.如下图: Mysql的存储引擎有这么多种,实际我们在平时用的最多的莫过 ...
- 轮播组件/瀑布流/组合搜索/KindEditor插件
一.企业官网 ### 瀑布流 Models.Student.objects.all() #获取所有学员信息 通过div进行循环图片和字幕 1.以template模板方法实现瀑布流以列为单位 ...
- CentOS7安装MySQL报错,解决Failed to start mysqld.service: Unit not found
当输入命令 ~]# systemctl start mysql.service 要启动MySQL数据库是却是这样的提示 Failed to start mysqld.service: Unit not ...
- winForm学习 2019年4月11日
1.Directory静态类 相似类:File.Path.StreamReader.StreamWirter 创建文件夹:Directory.CreateDirectory 删除文件夹:Directo ...
- 【WPF学习】第十七章 鼠标输入
鼠标事件执行几个关联的任务.当鼠标移到某个元素上时,可通过最基本的鼠标事件进行响应.这些事件是MouseEnter(当鼠标指针移到元素上时引发该事件)和MouseLeave(当鼠标指针离开元素时引发该 ...
- uniapp后台api设计(微信user表)
MySQL 创建数据库: CREATE DATABASE [IF NOT EXISTS] <数据库名> [[DEFAULT] CHARACTER SET <字符集名>] [[ ...
- 1-2.Kubectl命令行工具
1.kubectl用法 $~: kubectl [command] [TYPE] [NAME] [flags] [command] 子命令.用于操作Kubernetes集群资源对象. 可取值:[cre ...
- 【gRPC】如何便捷的调试gRPC程序
前言 gRPC是一款广泛应用的rpc框架,因为基于C/S架构,服务启动之后,需要编写对应的客户端才能调用,调试起来相对麻烦一些,这里主要介绍一下如何通过swagger-ui来调试grpc服务. grp ...
- mongodb4.xxx 安装,和基本配置
.社区版 下载地址 ww.mongodb.com/download-center/community .配置环境变量 安装目录下的 bin 目录 ,C:\z_MongoDB\bin:配置到系统环境变量 ...