eShopOnContainers 知多少[2]:Run起来
环境准备
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.gitclone代码到本地。使用默认DEV分支即可,该分支会保持最新改动,不要切换到其他分支。
git clone
环境设置
给Docker分配CPU和内存
温馨提示:以下的配置是最低需求,否则不保证项目能正常运行!
内存和CPU设置
设置共享驱动器
驱动器共享
设置镜像加速
把DaoCloud提供的镜像加速地址http://f1361db2.m.daocloud.io加到"registry-mirrors"的数组里,点击 Apply 。
镜像加速
勾选试验功能
如果遇到这个报错,Docker: “no matching manifest for windows/amd64 in the manifest list entries”,就勾选下面这个参数。
Experimental features
防火墙设置
打开代码路径,找到cli-windows\add-firewall-rules-for-sts-auth-thru-docker.ps1power shell脚本并执行,打开本地防火墙中的端口,以便对STS(Security Token Service container)进行身份验证。
eShopOnContainers 防火墙入站规则设置
构建并部署到本机Docker主机
进入eShopOnContainers根目录,执行docker-compose build。
构建
去喝几杯咖啡或者打个盹吧,估计得好一会。完成后,执行docker image,可以查看已经构建好的镜像。
镜像列表
PS:你可能会看到很多为的镜像,这些是临时镜像,可以通过命令docker rmi $(docker images -f "dangling=true" -q)删除。
接下来执行docker-compose up命令部署到本地Docker主机。
运行镜像
启动完成后,执行docker ps命令查看已启动的容器列表。
运行中的容器列表
本地访问http://localhost:5100/,即可打开MVC Web应用。如下图所示:
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
连接到容器内SQL Server数据库
关注我的公众号『微服务知多少』,我们微信不见不散。
阅罢此文,如果您觉得本文不错并有所收获,请【打赏】或【推荐】,也可【评论】留下您的问题或建议与我交流。 你的支持是我不断创作和分享的不竭动力!
作者:『圣杰』
出处:http://www.cnblogs.com/sheng-jie/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利。https://www.cnblogs.com/sheng-jie/p/9795996.html