.net 4.5部署到docker容器的完整步驟
前言
本文主要給大家介紹了關于.net 4.5部署到docker容器的相關內容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧
.net4.5部署到docker容器
- 部署到windows容器
- 部署到linux容器
部署到windows容器
由于.net本身就是運行在windows平臺的,所以它與windows容器也是更加適合,你可以以iis鏡像為基礎,去編寫你的Dockerfile文件,從而去構建你的.net項目鏡像。
1.兩個現成的例子
.net console程序
docker run --rm mcr.microsoft.com/dotnet/framework/samples:dotnetapp
.net web程序
docker run -it --rm -p 8000:80 --name aspnet_sample mcr.microsoft.com/dotnet/framework/samples:aspnetapp
1.為自己項目添加一個Dockerfile構建鏡像
FROM microsoft/aspnet
ARG source
WORKDIR /inetpub/wwwroot
COPY ${source:-obj/Docker/publish} .
參考:https://docs.microsoft.com/en-us/aspnet/mvc/overview/deployment/docker-aspnetmvc
部署到linux容器
對于非.net core的應用程序來說,要想在linux平臺運行需要安裝mono框架,這是在linux平臺運行.net程序的唯一方法,那么如果想把.net程序部署到linux容器里,也是一樣的方法過程,你需要構建一個安裝有mono環(huán)境的鏡像。
為自己的項目添加一個基于mono的Dockerfile
制作一個console app的Dockerfile并運行
FROM mono:latest RUN mono --version WORKDIR /app COPY ./bin/Debug/ . CMD [ "mono", "monoApp.exe" ]
打包鏡像
cd monoapp #Docfile所在目錄,它一般在項目根目錄 docker build . -t monoapp docker run monoapp
執(zhí)行結果
MacBook-Pro-6:monoApp lind.zhang$ docker run monoapp Hello World! MacBook-Pro-6:monoApp lind.zhang$
制作一個.net web的Dockerfile并運行
前提:我們的web項目要想運行,需要有一個像IIS一種的服務器組件,在linux里我們一般使用jexus來實現這個功能,也就是說,我們的docker鏡像應該即有mono還要有jexus的集成,這個鏡像我們可以自己寫,也可以使用現成的鏡像azraelrabbit/monupw,下面的Dockerfile是把一個web項目monoMvc打包成一個鏡像。
先把鏡像拉到本地
docker pull azraelrabbit/monupw
部署的步驟
- 建立Dockerfile文件,發(fā)布網站時應該帶上
- 發(fā)布網站
- 進行發(fā)布后的地址
- 打包 docker build . -t 鏡像名稱
- 啟動容器 docker run -d -p 8080:80 鏡像名稱
編寫Dockerfile文件
FROM azraelrabbit/monupw EXPOSE 80 WORKDIR /data COPY ./bin/ .
啟動你的容器,對外訪問用8080端口,容器內部是80端口
MacBook-Pro-6:monoMvc lind.zhang$ docker run -p 8080:80 monomvc Starting ... OK
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。
相關文章
ASP.NET Core實現單體程序的事件發(fā)布/訂閱詳解
這篇文章主要給大家介紹了關于ASP.NET Core實現單體程序的事件發(fā)布/訂閱的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2019-03-03
Visual Studio 2017如何用正則修改部分內容詳解
這篇文章主要給大家介紹了關于Visual Studio 2017如何用正則修改部分內容的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2018-05-05
asp.net自定義控件中注冊Javascript問題解決方案
這篇文章主要介紹了asp.net自定義控件中注冊Javascript的問題,需要的朋友可以參考下2014-05-05
Asp.net FileUpload上傳文件夾并檢測所有子文件的實現代碼
這篇文章主要介紹了Asp.net FileUpload上傳文件夾并檢測所有子文件的實現代碼,需要的朋友可以參考下2017-05-05

