如何将dotnet core webapi发布到docker中…
如何将dotnet core webapi发布到docker中
今天想起来撸一下docker,中途还是遇到些问题,但是这些问题都是由于路径什么的导致不正确,在这儿还是记录下操作过程,今天是基于windows来操作docker,先把windows搞定,后面再去Linux上搞docker。
1、前提条件
- Win10系统,不能是家庭版,并且需要开启Hyper-V
- 官网下载并安装:docker desktop for window
- 注册一个docker hub的账号,用于后面可以把镜像推送到在线仓库中
- 本地dotnet core开发环境
2、安装docker
- 下载docker desktop后直接根据提示进行安装
- 安装完成之后,打开CMD命令框,输入docker --version 能看到版本号就说明安装成功了
- 登录dockerhub账号:docker login回车根据提示输入你的账号密码即可
- cmd输入:docker run hello-world 拉取镜像并且运行一个容器
- cmd输入:docker image ls 查看镜像列表
- cmd输入:docker container ls 查看运行的容器列表
- CMD输入:**docker --help** 可以查看docker命令的帮助信息
3、创建WebApi,编译发布到指定目录
4、在WebApi发布目录中建立DockerFile文件,添加如下内容
# 基于microsoft/dotnet:latest构建Docker Image
# FROM microsoft/dotnet:latest
# FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-nanoserver-1903
FROM mcr.microsoft.com/dotnet/core/aspnet:3.1-nanoserver-1903
# 将publish下的所有文件拷贝到工作目录
COPY *.* ./
# 端口
EXPOSE 5000
# 启动webapi
CMD ["dotnet", "WebApi.dll"]
5、CMD进入WebApi发布目录,构建WebApi镜像,并启动容器
- CMD输入命令:docker image build -t yazid2020/test_webapi:1.0.1 .
- 启动容器:docker run -it -p 8089:5000 yazid2020/test_webapi:1.0.1
- 然后去访问接口,能看到已经能得到响应了
6、将镜像推送到docker hub中
- 在docker hub中先建立一个Repository镜像仓储【yazid2020/test_webapi】
- 将镜像推送到仓储:docker push yazid2020/test_webapi:1.0.1,这里可能会提示未登录,使用docker login登录即可
- 到这里就完成了将core webapi发布到docker中,并且将镜像推送到在线仓储,以后再次使用这个镜像时,直接拉取运行即可
docker pull yazid2020/test_webapi:1.0.1
docker run -it -p 8089:5000 yazid2020/test_webapi:1.0.1
# -it:表示需要提供一个模拟的shell环境
# -p 8089:5000:表示将DockerContainer的5000端口映射到主机环境的8089端口
不完善,或者还可以改进的地方可以给我留言,感谢!
如何将dotnet core webapi发布到docker中…的更多相关文章
- dotnet core webapi 发布部署到docker的步骤
1. 创建web api项目,编译并测试成功 2. 在项目的根目录添加Dockerfile文件,注意:Dockerfile文件名区分大小写 文件内容如下 # 基于microsoft/dotnet:la ...
- dotnet core webapi +vue 搭建前后端完全分离web架构
架构 服务端采用 dotnet core webapi 前端采用: Vue + router +elementUI+axios 问题 使用前后端完全分离的架构,首先遇到的问题肯定是跨域访问.前后端可 ...
- Docker 为 ASP.NET Core WebApi 应用程序生成 Docker 映像,创建容器并运行
1.使用VS2017新建ASP.NET Core WebApi项目 选择API启用Docker支持 2.为 ASP.NET Core WebApi 应用程序生成 Docker 映像,并创建容器运行 生 ...
- dotnet core webapi +vue 搭建前后端完全分离web架构(一)
架构 服务端采用 dotnet core webapi 前端采用: Vue + router +elementUI+axios 问题 使用前后端完全分离的架构,首先遇到的问题肯定是跨域访问.前后端可 ...
- 2017-03-04 dotnet core网站发布到Linux系统中
今天开始学习dotnet core的开发,距离Visual Stuio 2017正式版的发布,也就是VS20周岁的生日还有三天,在我的电脑上安装的是VS2017 Enterprise RC版, 在VS ...
- CYQ.Data 正式支持 DotNET Core 版本发布
闲话几句: 自从上周开始,IOS人员逝去,就开始接手IOS的代码了. 并开始整理IOS的代码(包括当时一开始设计的开发框架). 在未来不远的日子里,设想是有一个系列详细的介绍I恋App和IT连App及 ...
- Windows下docker的安装,将ASP.NET Core程序部署在docker中
参考文章: https://www.cnblogs.com/jRoger/p/aspnet-core-deploy-to-docker.html https://www.cnblogs.com/jRo ...
- [尝鲜]妈妈再也不用担心 dotnet core 程序发布了: .NET Core Global Tools
什么是 .NET Core Global Tools? Global Tools是.NET Core 2.1 中一个初次出现的特性.Global Tools提供了一种方法,让开发人员编写的.NET C ...
- .net core webapi发布
地址:https://www.cnblogs.com/laozhang-is-phi/p/9565227.html#autoid-5-1-0 地址2:https://www.cnblogs.com/f ...
随机推荐
- win 7 系统过期处理办法
超级尴尬,刚装的win7 系统居然过期了.下次再也不装盗版了,吼吼吼 处理方法就是下载oem7F7 软件安装,不用再怎么操作就好了. 就是这么简单,并不用像网上那样找什么激活码.
- ML Lecture 0-1: Introduction of Machine Learning
本博客是针对李宏毅教授在Youtube上上传的课程视频<ML Lecture 0-1: Introduction of Machine Learning>的学习笔记.在Github上也po ...
- 知识图谱里的知识表示:RDF
大部分知识图谱使用RDF描述世界上的各种资源,并以三元组的形式保存到知识库中.RDF( Resource Description Framework, 资源描述框架)是一种资源描述语言,它受到元数据标 ...
- go server框架学习之路 - 写一个自己的go框架
go server框架学习之路 - 写一个自己的go框架 用简单的代码实现一个go框架 代码地址: https://github.com/cw731/gcw 1 创建一个简单的框架 代码 packag ...
- [POJ1835]宇航员<模拟>
链接:http://poj.org/problem?id=1835 题干太长我就不放描述了. 一道大模拟 看着就脑壳疼. 难点可能在于方向的确认上 要明确当前的头朝向和脸朝向,才能进行处理 一个小小坑 ...
- C++ 简单信息的表示和基本运算
一.算术运算和自增自减运算 二.关系运算 三.逻辑运算 四.位运算 五.特殊运算符 六.混合运算中的类型转换
- 【纯净镜像】原版Windows7集成USB3.0+NVME补丁+UEFI引导旗舰版下载
系统简述: 1. 基于MSDN原版Windows7 Ultimate With SP1系统制作,无任何插件和垃圾软件. 2. 系统集成IE11浏览器,装完系统后默认浏览器就是IE11. 3.系统注入了 ...
- Python3安装Crypto加密包
Python3安装Crypto加密包 下载链接 加密包地址 步骤 下载加密包,解压加密包到Python安装目录下Lib\site-packages目录中,尝试在Pycharm中导入 from Cryp ...
- 监控一姐Grafana你可认识?
我们先来认识一下格拉法纳——Grafana. 我去,这不就是实时监控大屏吗?记得 N 年前,部门为了做这么个功能,还花重金请专业公司搞过类似的图,现在想想其实也很简单呀. 话又说回来,其实 Grafa ...
- (js描述的)数据结构[树结构1.2](12)
1.先序遍历 2.中序遍历 3.后序遍历 4.递归调用栈详解: 详细见: https://zhuanlan.zhihu.com/p/24291978 5.删除节点操作分析: 5.代码封装 //封装二叉 ...