Обратный прокси nginx docker django
Итак, я пытаюсь сделать два веб-приложения: appli1 и appli2. Они обслуживаются на web.appli1.com и web2.appli2.com
вот мой файл docker-compose :
version: '3'
services:
reverse-proxy:
image: nginx
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf
ports:
- 8000:8000
- 8001:8001
web:
build: .
command: python manage.py runserver 0.0.0.0:8000
depends_on:
- redis
environment:
- REDIS_HOST=redis
#ports:
#- "8000:8000"
web2:
build: .
command: python manage.py runserver 0.0.0.0:8001
depends_on:
- redis
environment:
- REDIS_HOST=redis
redis:
image: redis:3.2-alpine
volumes:
- redis_data:/data
volumes:
redis_data:
и вот мой файл nginx.conf :
events {
}
http {
server {
listen 8000;
server_name web.appli1.com;
location / {
proxy_pass http://web:8000;
}
}
server {
listen 8001;
server_name web2.appli2.com;
location / {
proxy_pass http://web2:8001;
}
}
}
Я также установил домены в /etc/hosts, используя ip хост-машины
version: "3.7"
services:
nginx:
image: nginx:latest
container_name: ngnix-proxy
ports:
- 8000:8000
volumes:
- ./nginx.conf:/etc/nginx/conf.d/default.conf
depends_on:
- web
- web2
server {
listen 8000;
root /srv/www/static;
location / {
index index.html index.htm;
try_files $uri $uri/ @web @web2;
}
location @web {
proxy_pass http://web:8000;
}
location @web2 {
proxy_pass http://web:8001;
}
}