CORS를 처리하기 위해 URI 라우팅을 활용하려는 두 개의 마이크로 서비스로 구성된 도커 작성 파일이 있습니다. 여기 내 작성 파일입니다NGINX + Docker 작성 라우팅 문제
version: "3.1"
services:
auth-api:
image: xxxx/auth-api:latest
restart: always
depends_on:
- "user-api"
user-api:
image: xxxx/user-api:latest
restart: always
nginx:
image: nginx
restart: always
ports:
- "80:80"
links:
- "auth-api"
- "user-api"
volumes:
- ./nginx:/etc/nginx
나는 라우팅의 nginx를 사용하고 싶지만와 관련된 문제로 실행하고 404 나 405의 리소스에 액세스하려고 할 때. 몇 가지 다른 구성을 시도하고 잠시 동안 NGINX가 api 끝점을 찾을 수 없다는 말을하고 있는데, 시작했을 때 해결 되었기 때문에 내 문제는 대부분 라우팅 구성과 관련되어 있다고 생각합니다. 해당 요청에 대해서는 /auth
및 /user
이 필요합니다.
worker_processes 1;
events { worker_connections 1024; }
http {
sendfile on;
upstream auth-target {
server auth-api:8080;
}
upstream user-target {
server user-api:8080;
}
server {
listen 80;
location /auth {
proxy_pass http://auth-target;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
}
location /user {
proxy_pass http://user-target;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $server_name;
}
}
}
저는 NGINX에 새로워서 내가하고있는 일이 옳은지 확실하지 않습니다. 또한 두 API 모두 컨테이너 빌드의 일부로 8080을 표시합니다.