關於發佈asp.net core 到 Docker CE 的一些問題及相關資料整理

最近這段時間在折騰asp.net core 發佈到容器。中間仍是遇到點問題。將來我的還須要解決問題的有html

一、發佈到容器的程序訪問Redis服務器錯誤,可是發佈到IIS是徹底正常的docker

二、Docker 容器IP地址設置數據庫

三、訪問宿主主鍵局域網內的數據庫服務器服務器

目前3點沒有解決。。。。時間有限最近也不須要也就是我的測試使用。。因此把這個過程當中一些命令和一旦部分問題記錄app

 

首先使用的一些docker 命令:asp.net

獲取容器IP
docker-machine ip default
Docker 容器鏡像刪除
1.中止全部的container,這樣纔可以刪除其中的images:

docker stop $(docker ps -a -q)

若是想要刪除全部container的話再加一個指令:

docker rm $(docker ps -a -q)

2.查看當前有些什麼images

docker images

3.刪除images,經過image的id來指定刪除誰

docker rmi <image id>

想要刪除untagged images,也就是那些id爲<None>的image的話能夠用

docker rmi $(docker images | grep "^<none>" | awk "{print $3}")

要刪除所有image的話

docker rmi $(docker images -q)

查看如有容器
docker ps

文件配置 Dockerfile:測試

//#Depending on the operating system of the host machines(s) that will build or run the containers, the image specified in the FROM statement may need to be changed.
//#For more information, please see https://aka.ms/containercompat

//FROM microsoft/dotnet:2.1-aspnetcore-runtime-nanoserver-sac2016 AS base
//WORKDIR /app
//EXPOSE 80

//FROM microsoft/dotnet:2.1-sdk-nanoserver-sac2016 AS build
//WORKDIR /src
//COPY ["NF.Web/NF.Web.csproj", "NF.Web/"]
//COPY ["NF.IBLL/NF.IBLL.csproj", "NF.IBLL/"]
//COPY ["NF.Common/NF.Common.csproj", "NF.Common/"]
//COPY ["NF.ViewModel/NF.ViewModel.csproj", "NF.ViewModel/"]
//COPY ["NF.Model/NF.Model.csproj", "NF.Model/"]
//COPY ["NF.BLL/NF.BLL.csproj", "NF.BLL/"]
//COPY ["NF.AutoMapper/NF.AutoMapper.csproj", "NF.AutoMapper/"]
//COPY ["NF.QuartzNet/NF.QuartzNet.csproj", "NF.QuartzNet/"]
//RUN dotnet restore "NF.Web/NF.Web.csproj"
//COPY . .
//WORKDIR "/src/NF.Web"
//RUN dotnet build "NF.Web.csproj" -c Release -o /app

//FROM build AS publish
//RUN dotnet publish "NF.Web.csproj" -c Release -o /app

//FROM base AS final
//WORKDIR /app
//COPY --from=publish /app .
//ENTRYPOINT ["dotnet", "NF.Web.dll"]




#以上是VS自動生成的。會出問題。在網上找些簡單命令測試以下正確運行
#添加基礎鏡像
FROM microsoft/dotnet:2.1-aspnetcore-runtime
#容器中系統的工做空間
WORKDIR /app
#拷貝當前文件夾下的文件到容器中系統的工做空間
COPY. /app

# 設置Docker容器對外暴露的端口
EXPOSE 5000
# 設置映射IP。否則默認只有8080能夠
ENV ASPNETCORE_URLS http://+:5000
# 放了這個 ZKWeb.System.Drawing 驗證碼顯示正常
RUN apt-get update
#容器中使用 ["dotnet","系統啓動的dll"] 來運行應用程序
#使用ENTRYPOINT ["dotnet","系統啓動的dll"]
#或使用 CMD ["dotnet","系統啓動的dll"]
ENTRYPOINT ["dotnet", "NF.Web.dll"]

 

我所參與網站以下:
http://www.cnblogs.com/stulzq/p/9201830.html
https://www.cnblogs.com/stulzq/p/9059108.html(對驗證碼顯示不正確有很大幫助)
相關文章
相關標籤/搜索