[Day30] 建立购物车系统 - 13 & 完赛心得

1. 修改docker-compose.yml

将购物车与其他系统都改成docker执行,修改docker-compose.yml:

version: "3.4"

networks:
   frontend:
   backend:
   
services:
   webmvc:
      build:
         context: .\src\Presentation\WebMvc
         dockerfile: Dockerfile
      environment:
         - CatalogUrl=http://catalog
         - IdentityUrl=https://${RPGSHOP_EXTERNAL_DNS_NAME_OR_IP}:7101
         - CallBackUrl=http://${RPGSHOP_EXTERNAL_DNS_NAME_OR_IP}:7500/
         - CartUrl=http://cart
      container_name: rpgwebmvc
      ports:
         - "7500:80"
      networks:
         - frontend
      depends_on:
         - catalog
         - auth

   catalog:
      build:
         context: .\src\Services\CatalogApi
         dockerfile: Dockerfile
      image: rpgshop/catalog
      environment:
         - DatabaseServer=mssqlserver
         - DatabaseName=CatalogDb
         - DatabaseUser=sa
         - DatabasePassword=JustTest!
         - ExternalCatalogBaseUrl=http://${RPGSHOP_EXTERNAL_DNS_NAME_OR_IP}:7000
      container_name: rpgcatalogapi
      ports:
         - "7000:80"
      networks:
         - backend
         - frontend
      depends_on:
         - mssqlserver

   auth:
      build:
         context: .\src\Services\AuthApi
         dockerfile: Dockerfile
      image: rpgshop/auth
      environment:
         - MvcClient=http://${RPGSHOP_EXTERNAL_DNS_NAME_OR_IP}:7500
         - BasketApiClient=http://cart,
         - DatabaseServer=mssqlserver
         - DatabaseName=AuthDb
         - DatabaseUser=sa
         - DatabasePassword=JustTest!
         - ExternalCatalogBaseUrl=http://${RPGSHOP_EXTERNAL_DNS_NAME_OR_IP}:7000
         - ASPNETCORE_URLS=http://+:80;https://+:443
         - ASPNETCORE_Kestrel__Certificates__Default__Password=crypticpassword
         - ASPNETCORE_Kestrel__Certificates__Default__Path=./AuthApi.pfx
      container_name: rpgauthapi
      ports:
         - "7100:80"
         - "7101:443"
      networks:
         - backend
         - frontend
      depends_on:
         - mssqlserver

   cart:
      build:
         context: .\src\Services\CartApi
         dockerfile: Dockerfile
      image: rpgshop/cart
      environment:
         - ConnectionString=cart.data
         - IdentityUrl=https://${RPGSHOP_EXTERNAL_DNS_NAME_OR_IP}:7101
      container_name: rpgcartapi
      ports:
         - "7400:80"
      networks:
         - backend
         - frontend
      depends_on:
         - cart.data

   mssqlserver:
      image: "microsoft/mssql-server-linux:latest"
      ports:
         - "1445:1433"
      container_name: rpgmssqlcontainer
      environment:
         - ACCEPT_EULA=Y
         - SA_PASSWORD=JustTest!
      networks:
         - backend

   cart.data:
      image: redis
      ports:
         - "6377:6379"
      networks:
         - backend

再执行docker-compose up後,网页输入http://docker.for.win.localhost:7500/ 并测试购物车的功能,如图1,只是还有Bug...

https://ithelp.ithome.com.tw/upload/images/20201015/20128651z9IJMwkLb2.png

图1

-------------------------------------------------------------

感谢铁人赛让我重拾写文章的动力,只是真的写得不是很好,中间很多功能没实作完整、又有Bug,时间太赶就写得零零落落QQ 之後会在个人Blog重新整理完整的流程,并把原先目标的功能都写完~

谢谢订阅支持我的网友,小弟的文章献丑了~


<<:  第30天 致谢与心得分享

>>:  LeetCode 896. Monotonic Array

Day 19 ml5.js 将 tensorflow 模型转换为 ml5 模型

我们可以将电脑的上 tensorflow 模型转换为 ml5 模型,并在浏览器上执行。 这代表我们可...

JavaScript 之旅 (30):总结 & 系列目录

终於来到铁人赛的最後一天!本篇对「JavaScript 之旅」此系列做个总结,并整理此系列中的每篇...

[Day 37] 关於web.php的迷失

这几天在改Laravel, 遇到一个很奇怪的问题, 我只要点击後台要到/admin/user/, 每...

这些日子我学到的JavaScript:Day27- AJAX

什麽是 AJAX ? AJAX 是 Asynchronous JavaScript and XML(...

找LeetCode上简单的题目来撑过30天啦(DAY17)

题号173 标题:Binary Search Tree Iterator 难度:Medium Imp...