利用docker容器运行.net core webapi

:first-child {
margin-top: 0 !important;
}

> :last-child {
margin-bottom: 0 !important;
}

a:not([href]) {
color: inherit;
text-decoration: none;
}

blockquote,
dl,
ol,
p,
pre,
table,
ul {
margin-bottom: 16px;
margin-top: 0;
}

hr {
background-color: #e1e4e8;
border: 0;
height: 0.25em;
margin: 24px 0;
padding: 0;
}

blockquote {
border-left: 0.25em solid #dfe2e5;
color: #6a737d;
padding: 0 1em;
}

blockquote > :first-child {
margin-top: 0;
}

blockquote > :last-child {
margin-bottom: 0;
}

kbd {
background-color: #fafbfc;
border: 1px solid #c6cbd1;
border-bottom-color: #959da5;
border-radius: 3px;
box-shadow: inset 0 -1px 0 #959da5;
color: #444d56;
display: inline-block;
font-size: 11px;
line-height: 10px;
padding: 3px 5px;
vertical-align: middle;
}

h1,
h2,
h3,
h4,
h5,
h6 {
font-weight: 600;
line-height: 1.25;
margin-bottom: 16px;
margin-top: 24px;
}

h1 {
font-size: 2em;
}

h1,
h2 {
border-bottom: 1px solid #eaecef;
padding-bottom: 0.3em;
}

h2 {
font-size: 1.5em;
}

h3 {
font-size: 1.25em;
}

h4 {
font-size: 1em;
}

h5 {
font-size: 0.875em;
}

h6 {
color: #6a737d;
font-size: 0.85em;
}

ol,
ul {
padding-left: 2em;
}

ol ol,
ol ul,
ul ol,
ul ul {
margin-bottom: 0;
margin-top: 0;
}

li {
word-wrap: break-all;
}

li > p {
margin-top: 16px;
}

li + li {
margin-top: 0.25em;
}

dl {
padding: 0;
}

dl dt {
font-size: 1em;
font-style: italic;
font-weight: 600;
margin-top: 16px;
padding: 0;
}

dl dd {
margin-bottom: 16px;
padding: 0 16px;
}

table {
display: block;
overflow: auto;
width: 100%;
}

table th {
font-weight: 600;
}

table td,
table th {
border: 1px solid #dfe2e5;
padding: 6px 13px;
}

table tr {
background-color: #fff;
border-top: 1px solid #c6cbd1;
}

table tr:nth-child(2n) {
background-color: #f6f8fa;
}

img {
background-color: #fff;
box-sizing: content-box;
max-width: 100%;
}

img[align='right'] {
padding-left: 20px;
}

img[align='left'] {
padding-right: 20px;
}

code {
background-color: rgba(27, 31, 35, 0.05);
border-radius: 3px;
font-size: 85%;
margin: 0;
padding: 0.2em 0.4em;
}

pre {
word-wrap: normal;
}

pre > code {
background: transparent;
border: 0;
font-size: 100%;
margin: 0;
padding: 0;
white-space: pre;
word-break: normal;
}

.highlight {
margin-bottom: 16px;
}

.highlight pre {
margin-bottom: 0;
word-break: normal;
}

.highlight pre,
pre {
background-color: #f6f8fa;
border-radius: 3px;
font-size: 85%;
line-height: 1.45;
overflow: auto;
padding: 16px;
}

pre code {
background-color: transparent;
border: 0;
display: inline;
line-height: inherit;
margin: 0;
max-width: auto;
overflow: visible;
padding: 0;
word-wrap: normal;
}

kbd {
background-color: #fafbfc;
border: 1px solid #d1d5da;
border-bottom-color: #c6cbd1;
border-radius: 3px;
box-shadow: inset 0 -1px 0 #c6cbd1;
color: #444d56;
display: inline-block;
font: 11px SFMono-Regular, Consolas, Liberation Mono, Menlo, Courier,
monospace;
line-height: 10px;
padding: 3px 5px;
vertical-align: middle;
}

:checked + .radio-label {
border-color: #0366d6;
position: relative;
z-index: 1;
}

.task-list-item {
list-style-type: none;
}

.task-list-item + .task-list-item {
margin-top: 3px;
}

.task-list-item input {
margin: 0 0.2em 0.25em -1.6em;
vertical-align: middle;
}

hr {
border-bottom-color: #eee;
}
-->

docker常用命令

  • docker info|查询docker基本信息
  • docker images | 查看所有镜像
  • docker ps | 查询所有容器
  • docker rmi | Remove one or more images
  • docker rm | Remove one or more containers
  • docker build | Build an image from a Dockerfile
  • docker run | Run a command in a new container
  • docker stop | Stop one or more running containers
  • docker start | Start one or more stopped containers
  • docker pull | Pull an image or a repository from a registry

cmd创建项目

安装.net core sdk

查询是否安装成功

C:\Users\jiangyi\myproj>dotnet -version

Unknown option: -version

.NET Core SDK (3.0.100)

新建项目

C:\Users\jiangyi>dotnet new webapi -n myproj

The template "ASP.NET Core Web API" was created successfully.

Processing post-creation actions...

Running 'dotnet restore' on myproj\myproj.csproj...

C:\Users\jiangyi\myproj\myproj.csproj 的还原在 88.66 ms 内完成。

Restore succeeded.

生成项目

cd到项目目录:

C:\Users\jiangyi>cd myproj

编译生成项目:

C:\Users\jiangyi\myproj>dotnet restore

C:\Users\jiangyi\myproj\myproj.csproj 的还原在 30.56 ms 内完成。

在本地运行

C:\Users\jiangyi\myproj>dotnet run

info: Microsoft.Hosting.Lifetime[0]

  Now listening on: https://localhost:5001

info: Microsoft.Hosting.Lifetime[0]

  Now listening on: http://localhost:5000

info: Microsoft.Hosting.Lifetime[0]

  Application started. Press Ctrl+C to shut down.

可以通过浏览器访问https://localhost:5001

创建镜像

ps:myprojimage为你要输出的镜像名称,后面有'.'注意

C:\Users\jiangyi\myproj>docker build -t myprojimage .

...

Build succeeded. 0 Warning(s) 0 Error(s)

Time Elapsed 00:00:03.15

发布项目

ps:运行镜像,将docker的80端口发布出去,在外部访问使用8080端口

C:\Users\jiangyi\myproj>docker run -p 8080:80 myprojimage

info: Microsoft.Hosting.Lifetime[0]

  Now listening on: http://[::]:80

info: Microsoft.Hosting.Lifetime[0]

  Application started. Press Ctrl+C to shut down.

ps:如没有DockerFile文件,可以使用vs打开项目添加docker支持后就有DockerFile文件了。

利用docker容器运行.net core webapi的更多相关文章

  1. Docker容器运行ASP.NET Core

    最近要学习的知识太多,都不知道先学哪些了,原本计划这篇博客是写xamarin.forms中的listview用法,关于listview的用法简书上有一篇介绍的也比较详细,所以暂时先缓一缓,属于次要任务 ...

  2. 基于阿里云容器服务用docker容器运行ASP.NET 5示例程序

    小试阿里云容器服务 之后,接下来有一个挡不住的小试冲动--用docker容器运行程序.首先想到的程序是 ASP.NET 5示例程序,于是参考msdn博客中的这篇博文 Running ASP.NET 5 ...

  3. Docker 为 ASP.NET Core WebApi 应用程序生成 Docker 映像,创建容器并运行

    1.使用VS2017新建ASP.NET Core WebApi项目 选择API启用Docker支持 2.为 ASP.NET Core WebApi 应用程序生成 Docker 映像,并创建容器运行 生 ...

  4. .Net Core 自动化部署:使用jenkins部署到linux docker容器运行

    上次我们说到.Net Core 自动化部署:使用docker版jenkins部署dotnetcore应用,这次我们使用jenkins发布我们的.NET Core站点到docker容器中运行,为后面的的 ...

  5. docker容器互联 (.net core容器,mysql容器)

    背景 有两个容器一个运行的.net core的项目 另一个运行的mysql的数据 并且这两个容器在同一个机子上(或者局域网),那么理论上.net core的项目去访问mysql是可以走内网的 但是容器 ...

  6. docker (2)---存储、网络(利用docker容器上线静态网站)

    一.docker底层依赖的核心技术 1.命名空间 (Namespaces) 2.控制组 (Control Groups) 3.联合文件系统 (Union File System) 4.Linux 虚拟 ...

  7. Docker教程:使用Docker容器运行Nginx并实现反向代理

    一.前言 我们知道,为了安全考虑,我们一般会设置反向代理,用来屏蔽应用程序真实的IP和端口号.在Linux系统上最常用的反向代理就是Nginx.本篇文章中,我们会通过Docker容器分别运行一个Ngi ...

  8. 浩若烟海事半功倍|利用Docker容器技术构建自动化分布式web测试集群Selenium Grid

    原文转载自「刘悦的技术博客」https://v3u.cn/a_id_195 "世界上有那么多城市,城市里有那么多的酒馆,可她,却偏偏走进了我的-",这是电影<卡萨布拉卡> ...

  9. docker容器运行后退出,怎么才能一直运行?【转】

    现象 启动docker容器 docker run –name [CONTAINER_NAME] [CONTAINER_ID] 查看容器运行状态 docker ps -a 发现刚刚启动的mydocker ...

随机推荐

  1. 防止chrome主页被篡改并设置为默认打开无痕浏览方式

    1. 找到chrome的快捷方式, 右击打开属性 2. 将目标框内容改为以下内容chrome.exe的目录位置 // ----- 引号中的内容为"PATH\Chrome\Applicatio ...

  2. ros 工作空间下cpp文件调用其他cpp文件的函数或变量

    最近在学习ros节点编程,在工作空间下添加如下文件: message.h #ifndef MESSAGE_H #define MESSAGE_H extern int n; void init_ros ...

  3. 5.0.1版本的react-router-dom路由传参以及路由表的配置和接收页面的接受

    //第一种 通过问号传参 //发送 this.props.history.push("/detail?id="+item.downurl) //路由表配置 <Route pa ...

  4. @loj - 2288@「THUWC 2017」大葱的神力

    目录 @description@ @solution@ @data - 1@ @data - 2@ @data - 3@ @data - 4@ @data - 5@ @data - 6@ @data ...

  5. LOJ6079「2017 山东一轮集训 Day7」养猫

    养ImmortalCO k可重区间问题 的增强版:有上下界! 直接都选择s[i],然后再把一些调整到e[i] 考虑通过最大流的“最大”,使得至少每k个有me个e, 通过最大流的“上界”,限制每k个最多 ...

  6. HZOJ 走格子

    作者的正解: 对于100%的数据:行动可以分为两种: 1. 步行,花费一个单位的时间移动到4联通的相邻格子中去. 2. 使用传送门,指定一个方向的墙的前面的一个格子,步行至最近的一个墙的面前,使用传送 ...

  7. 关于RESTful一些注意事项,和自己整理的接口开发规范

    https://blog.csdn.net/u013731455/article/details/56278168 最近在研究restful,公司开发要使用,所以自己就去网上找了好些资料,并整理了一套 ...

  8. Python关键点常识

    关键点常识 Python的发音与拼写 Python的作者是Guido van Rossum(龟叔) Python正式诞生于1991年 Python的解释器如今有多个语言实现,我们常用的是CPython ...

  9. Windows系统下三十款优秀开源软件

    Windows系统下三十款优秀开源软件 1.Firefox 官方网站:http://www.getfirefox.com/ 可替换Internet Explorer 功能特点:如果你还没有使用Fire ...

  10. poj 1263 Reflections (Simple Geometry)

    1263 -- Reflections 简单计算几何.题目给出射线以及若干个不相交的圆,求出射线会在哪些圆上反弹,依次写出反弹球的编号. 代码如下: #include <cstdio> # ...