Как перенаправить запрос с nginx на sentry?
Поднимаю на VDS следующую конфигурацию:
version: '3'
services:
sentryredis:
image: redis:6.0.6-alpine
sentrypostgres:
image: postgres:12.3-alpine
env_file:
- .env
environment:
POSTGRES_USER: ${DB_USER}
POSTGRES_PASSWORD: ${DB_PASS}
POSTGRES_DB: ${DB_NAME}
volumes:
- ./pgdb:/var/lib/postgresql/data
sentrybase: &sentrybase
image: sentry:9.1.2
depends_on:
- sentryredis
- sentrypostgres
env_file:
- .env
environment:
SENTRY_SECRET_KEY: ${SENTRY_KEY}
SENTRY_POSTGRES_HOST: sentrypostgres
SENTRY_DB_USER: ${DB_USER}
SENTRY_DB_PASSWORD: ${DB_PASS}
SENTRY_DB_NAME: ${DB_NAME}
SENTRY_REDIS_HOST: sentryredis
sentry:
<<: *sentrybase
ports:
- ${UI_PORT}:9000
sentrycron:
<<: *sentrybase
command: "sentry run cron"
sentryworker:
<<: *sentrybase
command: "sentry run worker"
Инициализирую БД, рестартую контейнеры.
Потом ставлю nginx. В /etc/nginx/sites-enabled/default у меня такой конфиг:
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name some.domain.name;
location / {
proxy_pass http://0.0.0.0:9000;
proxy_http_version 1.1;
proxy_redirect off;
proxy_buffering 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-Proto $scheme;
}
}
Захожу в браузере на /, меня редиректит на /auth/login/ - получаю ошибку 502.
Вроде не делаю ничего необычного, но не могу достучаться.
Что я делаю не так?
Ответы (1 шт):
Автор решения: Sergei Kirjanov
→ Ссылка
Попробуйте прописать в proxy_pass реальный IP хоста, если он статический.
Если nginx пускать в том же compose -- proxy_pass http://sentry:9000;
В этом случае допускаю вариант, когда контейнер sentry пересоздастся/перезапустится, получит другой IP, а nginx закеширует старый; надо проверять.