https://www.cnblogs.com/sheng-jie/p/9795996.html
環境准備
- Win10(開啟Hyper-V)
- .NET Core SDK
- Docker for Windows
- VS2017 or VS Code
- Git
- SQL Server Management Studio(可選)
- Redis Desktop Manager(可選)
- Node.js(可選)
- Bower(可選)
Clone代碼到本地
執行命令git clone https://github.com/dotnet/eShopOnContainers.git
clone代碼到本地。使用默認DEV
分支即可,該分支會保持最新改動,不要切換到其他分支。
環境設置
-
給Docker分配CPU和內存
溫馨提示:以下的配置是最低需求,否則不保證項目能正常運行! -
設置共享驅動器
-
設置鏡像加速
把DaoCloud提供的鏡像加速地址http://f1361db2.m.daocloud.io
加到"registry-mirrors"的數組里,點擊 Apply 。 -
勾選試驗功能
如果遇到這個報錯,Docker: “no matching manifest for windows/amd64 in the manifest list entries”,就勾選下面這個參數。 -
防火牆設置
打開代碼路徑,找到cli-windows\add-firewall-rules-for-sts-auth-thru-docker.ps1
power shell腳本並執行,打開本地防火牆中的端口,以便對STS(Security Token Service container)進行身份驗證。
構建並部署到本機Docker主機
進入eShopOnContainers根目錄,執行docker-compose build
。
去喝幾杯咖啡或者打個盹吧,估計得好一會。完成后,執行docker image
,可以查看已經構建好的鏡像。
PS:你可能會看到很多為<none>
的鏡像,這些是臨時鏡像,可以通過命令docker rmi $(docker images -f "dangling=true" -q)
刪除。
接下來執行docker-compose up
命令部署到本地Docker主機。
啟動完成后,執行docker ps
命令查看已啟動的容器列表。
本地訪問http://localhost:5100/,即可打開MVC Web應用。如下圖所示:
測試所有應用程序和微服務
一旦完成容器部署,就可以從本地開發機器通過一下URL或連接字符串任何服務。
- Web MVC: http://localhost:5100
- Web Spa: http://localhost:5104
- Catalog microservice(產品目錄微服務): http://localhost:5101 (Not secured)
- Ordering microservice(訂單微服務): http://localhost:5102 (Requires token for authorization)
- Basket microservice(購物車微服務: http://localhost:5103 (Requires token for authorization)
- Identity microservice(認證授權微服務): http://localhost:5105
- Web Status(健康檢查): http://localhost:5107
- Orders database (訂單數據庫)(SQL Server connection string):
Server=tcp:localhost,5432;Database=Microsoft.eShopOnContainers.Services.OrderingDb;User Id=sa;Password=Pass@word;
- Catalog database (產品目錄數據庫)(SQL Server connection string):
Server=tcp:localhost,5434;Database=CatalogDB;User Id=sa;Password=Pass@word
- ASP.NET Identity database(身份數據庫) (SQL Server connection string):
Server=localhost,5433;Database=aspnet-Microsoft.eShopOnContainers;User Id=sa;Password=Pass@word
- Basket data(購物車數據) (Redis): listening at localhost:6379
其他
PS:關於如何從外部連接SQL Server數據庫,使用:
Server:localhost,5433 (這里是逗號,不是冒號!!!)
User:sa
Pwd:Pass@word

關注我的公眾號『微服務知多少』,我們微信不見不散。
閱罷此文,如果您覺得本文不錯並有所收獲,請【打賞】或【推薦】,也可【評論】留下您的問題或建議與我交流。 你的支持是我不斷創作和分享的不竭動力!