执行命令git clone https://github.com/dotnet/eShopOnContainers.git
clone代码到本地。使用默认DEV
分支便可,该分支会保持最新改动,不要切换到其余分支。node
给Docker分配CPU和内存
舒适提示:如下的配置是最低需求,不然不保证项目能正常运行!
git
设置共享驱动器
github
设置镜像加速
把DaoCloud提供的镜像加速地址http://f1361db2.m.daocloud.io
加到"registry-mirrors"的数组里,点击 Apply 。
redis
勾选试验功能
若是遇到这个报错,Docker: “no matching manifest for windows/amd64 in the manifest list entries”,就勾选下面这个参数。
docker
防火墙设置
打开代码路径,找到cli-windows\add-firewall-rules-for-sts-auth-thru-docker.ps1
power shell脚本并执行,打开本地防火墙中的端口,以便对STS(Security Token Service container)进行身份验证。
shell
进入eShopOnContainers根目录,执行docker-compose build
。
数据库
去喝几杯咖啡或者打个盹吧,估计得好一会。完成后,执行docker image
,能够查看已经构建好的镜像。
windows
PS:你可能会看到不少为<none>
的镜像,这些是临时镜像,能够经过命令docker rmi $(docker images -f "dangling=true" -q)
删除。数组
接下来执行docker-compose up
命令部署到本地Docker主机。
tcp
启动完成后,执行docker ps
命令查看已启动的容器列表。
本地访问http://localhost:5100/,便可打开MVC Web应用。以下图所示:
一旦完成容器部署,就能够从本地开发机器经过一下URL或链接字符串任何服务。
Server=tcp:localhost,5432;Database=Microsoft.eShopOnContainers.Services.OrderingDb;User Id=sa;Password=Pass@word;
Server=tcp:localhost,5434;Database=CatalogDB;User Id=sa;Password=Pass@word
Server=localhost,5433;Database=aspnet-Microsoft.eShopOnContainers;User Id=sa;Password=Pass@word
PS:关于如何从外部链接SQL Server数据库,使用:
Server:localhost,5433 (这里是逗号,不是冒号!!!)
User:sa
Pwd:Pass@word