我正在尝试使用Azure Active Directory为应用程序服务启用内置身份验证。
当我使用单个容器配置时,它工作正常,但是当我尝试配置docker-compose时,到Microsoft登录页面的重定向就位。
我正在使用nginx(反向代理图像)来服务静态网站(两个图像)和一个api图像(服务器图像)。
启用了应用程序服务内置身份验证,并配置了Active Directory,并且未对请求进行身份验证时采取的操作设置为“使用Azure Active Directory登录”。 screenshot of auth setup
docker-compose.yml
version: '3'
services:
api:
image: plugotestcontainerregistry.azurecr.io/server:latest
environment:
PORT: 4000
expose:
- "4000"
restart: always
reverse-proxy:
image: plugotestcontainerregistry.azurecr.io/reverse-proxy:latest
ports:
- "8080:8080"
restart: always
nginx配置
server {
listen 80;
root /usr/share/nginx/root;
location / {
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
location /api {
proxy_pass "http://api:4000";
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-For $remote_addr;
}
location /admin {
alias /usr/share/nginx/admin/;
index index.html index.htm;
try_files $uri $uri/ /admin/index.html;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
使用AAD和docker在Web App中对容器进行工作身份验证。