我正在用Microservices在本地构建一个应用程序,然后在docker容器上构建
我现在有Eureka,Zuul和springsecurity,一个使用springboot2的微服务,还有一个angular6客户端
,扩展
WebSecurityConfigurerAdapter
类,重写
configure
在本地它工作得很好。我的委托人(
http://localhost:4200
http://localhost:8762/microservice/api/..
,添加带有选项的基本身份验证标头。
但是对于Docker容器,用Docker Compose构建,情况就不一样了。Chrome抛出一个“未知异常”,而Firefox则指出了一个跨源错误
选项请求。客户端通过Zuul调用API,如下所示:
http://gdt-gateway-proxy-service:8762/microservice/api/
...
这是我生活的一部分
docker-compose.yml
version: '2'
services:
...
gdt-gateway-proxy-service:
container_name: alpine-jdk8-gdt-gateway-proxy-service
build:
context: .
dockerfile: Dockerfile.gdt-gateway-proxy-service
image: alpine-jdk8-gdt-gateway-proxy-service:latest
...
expose:
- 8762
ports:
- 8762:8762
networks:
- gdt-network
...
gdt-client:
container_name: alpine-httpd-gdt-client
build:
context: .
dockerfile: Dockerfile.alpine.httpd-gdt-client
image: alpine-httpd-gdt-client:base
expose:
- 4200
ports:
- 4200:80
networks:
- gdt-network
links:
- gdt-gateway-proxy-service:gdt-gateway-proxy-service
depends_on:
- gdt-gateway-proxy-service
logging:
driver: json-file
networks:
gdt-network:
driver: bridge