我在 docker-compose 中指定了两个依赖于 api 的服务 - api
和 web
。两者都是aspnet核心Web应用程序
version: '3.4'
services:
api:
image: mywebapi
build:
context: .
dockerfile: MyWebApi/Dockerfile
ports:
- "44380:443"
web:
image: mywebapp
build:
context: .
dockerfile: MyWebApp/Dockerfile
environment:
- ApiClient__Uri=https://api
ports:
- "80:80"
- "443:443"
depends_on:
- api
如果我从主机挂载证书,我可以使用自签名开发证书从本地主机访问任何这些服务
volumes:
- ${APPDATA}/ASP.NET/Https:/root/.aspnet/https
但我想通过 api
从 web
访问 https://api/foo
,而不将任何 api
端口映射到主机。
我如何为 api
颁发由 web
信任的某个 CA 的证书?或者也许有另一种安全的方式在两个服务之间进行 https 通信?