Nginx. Выпуск для доступа к redoc
У меня есть проект Django и я пытаюсь развернуть его на сервере с помощью docker и nginx. Нет проблем с развертыванием и получением доступа к необходимым страницам, но я не могу получить доступ к странице redoc. Конфиг Nginx следующий (default.conf):
server {
listen 80;
location /static/ {
root /var/html/;
}
location /media/ {
root /var/html/;
}
location /redoc/ {
root /var/html;
try_files $uri $uri/redoc.html;
}
location / {
proxy_pass http://web:8000;
}
}
docker-compose.yaml:
services:
db:
image: postgres:12.4
volumes:
- postgres_data:/var/lib/postgresql/data/
env_file:
- ./.env
web:
image:
restart: always
volumes:
- static_value:/code/static/
- media_value:/code/media/
depends_on:
- db
env_file:
- ./.env
nginx:
image: nginx:1.19.3
ports:
- "80:80"
volumes:
- ./nginx/default.conf:/etc/nginx/conf.d/default.conf
- static_value:/var/html/static/
- media_value:/var/html/media/
- .static/redoc.yaml:/var/html/redoc/redoc.yaml
- .templates/redoc.html:/var/html/redoc/redoc.html
depends_on:
- web
volumes:
postgres_data:
static_value:
media_value:
Могли бы вы, пожалуйста, посоветовать, что не так в настройках?
Попробуйте исправить путь к redoc.html
внутри вашей volumes
. Если этот html-файл находится в папке templates
, то есть рядом с docker-compose.yml
, вместо
- .templates/redoc.html:/var/html/redoc/redoc.html
try
- ./templates/redoc.html:/var/html/redoc/redoc.html
затем перейдите по ссылке http://<ip-address>/redoc/
(с косой чертой в конце).