使用nginx重定向到端口4000

mspsb9vt  于 2023-04-20  发布在  Nginx
关注(0)|答案(1)|浏览(175)

我知道已经有很多这样的请求了。但是我不能通过ngnix转发到另一个端口。
docker-compose.yml

---
version: '3'
services:
  umami:
    container_name: umami
    image: ghcr.io/umami-software/umami:postgresql-latest
    ports:
      - "4000:3000"
    environment:
      DATABASE_URL: postgresql://umami:umami@db:5432/umami
      DATABASE_TYPE: postgresql
      HASH_SALT: ovD4Q594iOC6RfjgB8
    depends_on:
      - db
    restart: always
  db:
    container_name: umami_db
    image: postgres:12-alpine
    environment:
      POSTGRES_DB: umami
      POSTGRES_USER: umami
      POSTGRES_PASSWORD: umami
    volumes:
      - ./sql/schema.postgresql.sql:/docker-entrypoint-initdb.d/schema.postgresql.sql:ro
      - umami-db-data:/var/lib/postgresql/data
    restart: always
  nginx:
    container_name: nginx
    image: nginx:1.23.4-alpine
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./nginx:/etc/nginx/conf.d
volumes:
  umami-db-data:

nginx/nginx.conf

server {
    listen 80;
    location /umami {
        proxy_pass http://localhost:4000/;
    }
}

Umami在http://localhost:4000/成功运行
得到“Bad Gateway”和日志:

2023-04-15 17:26:24 2023/04/15 15:26:24 [error] 20#20: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 172.19.0.1, server: , request: "GET /umami/ HTTP/1.1", upstream: "http://127.0.0.1:4000//", host: "localhost"
2023-04-15 17:26:24 172.19.0.1 - - [15/Apr/2023:15:26:24 +0000] "GET /umami/ HTTP/1.1" 502 559 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36" "-"

我做错了什么?

oewdyzsn

oewdyzsn1#

不应使用localhost,而应使用服务名称umami

proxy_pass http://umami:3000/;

原因是在这种情况下,localhost指向nginx容器的localhost,而不是托管机器的localhost

相关问题