日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

ASP.NET Core Docker部署

發(fā)布時間:2023/12/4 asp.net 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ASP.NET Core Docker部署 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前言

在前面文章中,介紹了 ASP.NET Core在 macOS,Linux 上基于Nginx和Jexus的發(fā)布和部署,本篇文章主要是如何在Docker容器中運行ASP.NET Core應(yīng)用程序。

Asp.Net Core 發(fā)布和部署( MacOS + Linux + Nginx )

Asp.Net Core 發(fā)布和部署(Linux + Jexus )

目錄

  • Docker 常用命令

  • Docker 安裝Asp.Net Core鏡像

  • 使用Dockerfile部署

Docker 常用命令

docker info
檢查Docker的安裝是否正確,如果沒有找到此命令,則表示Docker沒有正確安裝

docker pull busybox
拉取一個預(yù)建的鏡像

sample_job=$(docker run -d busybox /bin/sh -c "while true; do echo Docker; sleep 1; done")
以后臺進程的方式運行hello docker
sample_job命令會隔一秒打印一次Docker,使用Docker logs可以查看輸出。如果沒有起名字,那這個job會被分配一個id,以后使用命令例如Docker logs查看日志會變得比較麻煩。

docker logs $sample_job
運行Docker logs命令來查看job的當前狀態(tài):

docker help
所有Docker命令

docker stop $sample_job
停止名為sample_job的容器

docker restart $sample_job
重新啟動該容器

docker stop $sample_job docker rm $sample_job
如果要完全移除容器,需要將該容器停止,然后才能移除

docker commit $sample_job job1
將容器的狀態(tài)保存為鏡像

docker images
令查看所有鏡像的列表

下面分享一些我經(jīng)常使用的一些命令:

移除所有的容器和鏡像,用一行命令大掃除:
docker kill $(docker ps -q) ; docker rm $(docker ps -a -q) ; docker rmi $(docker images -q -a)

僅僅想刪除所有的容器,你可以運行如下命令:
docker kill $(docker ps -q) ; docker rm $(docker ps -a -q)

清除名稱為none的鏡像,一般都是下載一般失敗的殘留:

docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker stop docker ps -a | grep "Exited" | awk '{print $1 }'|xargs docker rm docker images|grep none|awk '{print $3 }'|xargs docker rmi

清除單個鏡像:
docker rmi -f <image id>

Docker 安裝Asp.Net Core鏡像

有關(guān)Docker的安裝請參考官網(wǎng):
https://www.docker.com/products/docker

到這里,假設(shè)你的Docker已經(jīng)安裝完成,以下環(huán)境為 Liunx(Ubuntu 15.02)。

打開?https://hub.docker.com?右上角搜索dotnet,選擇第一個搜索結(jié)果microsoft/dotnet,點進去如下圖:

得到命令了吧,切換到命令行窗口運行以下命令來安裝asp.net core 鏡像。

sudo docker pull microsoft/dotnet

什么? 沒響應(yīng),速度慢? 你不會買個高速VPN啊~
什么? 沒錢? 你不會找一個國內(nèi)的Docker鏡像站啊~ DaoCloud鏡像啊,阿里云Docker鏡像啊。。自己動手找啊。。

鏡像下載完成之后,輸入sudo docker iamges我們檢查一下:

至此,準備工作已經(jīng)全部完成了

使用 Dockerfile 部署

Dockerfile 是什么東西,Dockerfile有什么用,自行百度。

博主直接教你怎么寫吧:

總不能一直用5000端口吧,這次我們使用60000端口

1、程序命令行切換到publish文件目錄中。
2、sudo touch Dockerfile?名稱不要寫錯了,沒有任何后綴名,來新建一個Dockerfile文件。
3、sudo vim Dockerfile?使用Vim來編輯Dockerfile。如果Vim不會用就用gedit吧。
4、輸入以下內(nèi)容:

Dockerfile

#基于 `microsoft/dotnet:1.0.0-core` 來構(gòu)建我們的鏡像FROM microsoft/dotnet:1.0.0-core#拷貝項目publish文件夾中的所有文件到 docker容器中的publish文件夾中 ?COPY . /publish#設(shè)置工作目錄為 `/publish` 文件夾,即容器啟動默認的文件夾WORKDIR /publish#設(shè)置Docker容器對外暴露60000端口EXPOSE 60000#使用`dotnet HelloWebApp.dll`來運行應(yīng)用程序CMD ["dotnet", "HelloWebApp.dll", "--server.urls", "http://*:60000"]

使用:wq來保存并退出 (gedit無視掉 )。

構(gòu)建鏡像

運行?docker build -t hellowebapp:1.0 .?來構(gòu)建一個鏡像

運行構(gòu)建的鏡像

使用docker run --name hellowebapp -d -p 60000:60000 hellowebapp:1.0

打開瀏覽器測試一下:

下一篇怎么在 Linux 為 dotnet 創(chuàng)建守護進程(Linux 部署必備知識),已經(jīng)寫好了,明天發(fā)。

相關(guān)文章:

  • ASP.NET Core 1.0 入門——了解一個空項目

  • ASP.NET Core 1.0 部署 HTTPS (.NET Framework 4.5.1)

  • .NET Core 1.0、ASP.NET Core 1.0和EF Core 1.0簡介

  • 云服務(wù)器下ASP.NET Core 1.0環(huán)境搭建(包含mono與coreclr)

  • 使用VS Code開發(fā)ASP.NET Core 應(yīng)用程序

  • dotnet run是如何啟動asp.net core站點的

  • ASP.NET Core提供模塊化Middleware組件

  • “dotnet restore"和"dotnet run"都做了些什么?

  • 探秘 dotnet run 如何運行 .NET Core 應(yīng)用程序

  • .NET Portability Analyzer 已開源

  • ASP.NET Core的配置(1):讀取配置信息

  • ASP.NET Core的配置(2):配置模型詳解

  • .NET Core 1.0 RC2 歷險之旅

  • 使用VS Code開發(fā) 調(diào)試.NET Core 應(yīng)用程序

  • 讓我們Core在一起:ASP.NET Core & .NET Core

  • .NET Core VS Code 環(huán)境配置

  • 官方博客明確了 .NET Core RC2/RTM 時間表

  • .NET Core全新的配置管理[共9篇]

  • 利用記事本創(chuàng)建一個ASP.NET Core RC2 MVC應(yīng)用

  • 微軟.NET 正式劈腿成功,橫跨所有平臺

  • .NET Core 1.0 CentOS7 嘗試

  • 解讀發(fā)布:.NET Core RC2 and .NET Core SDK Preview 1

  • [.NET Core].NET Core R2安裝及示例教程

  • ASP.NET Core 開發(fā)-中間件(Middleware)

  • 結(jié)合Jexus + Kestrel 部署 asp.net core 生產(chǎn)環(huán)境

  • 通過Jexus 部署 dotnetcore版本MusicStore 示例程序

  • ASP.NET Core 中文文檔 第一章 入門

  • 用 Visual Studio Code 在 macOS 上創(chuàng)建首個 ASP.NET Core 應(yīng)用程序

  • 用 Visual Studio 和 ASP.NET Core MVC 創(chuàng)建首個 Web API

  • 用 Visual Studio 發(fā)布一個 Azure 云 Web 應(yīng)用程序

  • ASP.NET Core MVC 與 Visual Studio 入門

  • 第二章指南(4.2)添加 Controller

  • DotNet Core 介紹

  • asp.net core 中間件詳解及項目實戰(zhàn)

  • 教你實踐ASP.NET Core Authorization(免看文檔教程)

  • asp.net core 使用 Redis 和 Protobuf 進行 Session 緩存

  • asp.net core 中間件詳解及項目實戰(zhàn)

  • 第二章 指南(4.3)添加 View

  • dotnet core開發(fā)體驗之開始MVC

  • dotnet core 開發(fā)體驗之Routing

  • 聊聊ASP.NET Core默認提供的這個跨平臺的服務(wù)器——KestrelServer

  • 簡析.NET Core 以及與 .NET Framework的關(guān)系

  • .NET Core 使用Dapper 操作MySQL

  • 使用 CommandLineApplication 類創(chuàng)建專業(yè)的控制臺程序

  • 簡析 .NET Core 構(gòu)成體系

  • .NET Core也可以使用MongoDB了

  • .NET Core & ASP.NET Core 1.0在Redhat峰會上正式發(fā)布

  • .NET Core:面向未來的開源跨平臺開發(fā)技術(shù)

  • 微軟說它深愛著Linux,現(xiàn)在它用行動證明了

  • 移植.NET Core計劃,整合各平臺變得更簡單了!

  • ASP.NET Core 介紹

  • 通過幾個Hello World感受.NET Core全新的開發(fā)體驗

  • ASP.NET Core 運行原理剖析1:初始化WebApp模版并運行

  • .NET Core系列 : 1、.NET Core 環(huán)境搭建和命令行CLI入門

  • Asp.Net Core 發(fā)布和部署( MacOS + Linux + Nginx )

  • Asp.Net Core 發(fā)布和部署(Linux + Jexus )

  • 學習ASP.NET Core,你必須了解無處不在的“依賴注入”

  • .NET Core應(yīng)用類型(Portable apps & Self-contained apps)

  • .NET Core 1.0發(fā)布:微軟開源跨平臺大布局序幕

  • ASP.NET Core 運行原理剖析2:Startup 和 Middleware(中間件)

  • 在Windows Server 2012 R2 Standard 部署 ASP.NET Core程序

  • ASP.NET Core 開發(fā)-Entity Framework (EF) Core 1.0 Database First

  • 擁抱.NET Core,跨平臺的輕量級RPC:Rabbit.Rpc

  • 使用 dotnet watch 開發(fā) ASP.NET Core 應(yīng)用程序

  • ASP.NET Core 發(fā)布至Linux生產(chǎn)環(huán)境 Ubuntu 系統(tǒng)

原文地址:http://www.cnblogs.com/savorboard/p/dotnetcore-docker.html


.NET社區(qū)新聞,深度好文,微信中搜索dotNET跨平臺或掃描二維碼關(guān)注

總結(jié)

以上是生活随笔為你收集整理的ASP.NET Core Docker部署的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。