docker - 使用主机名而不是IP地址将 Varnish 服务器添加到Nginx

标签 docker nginx varnish

尝试使用docker容器名称而不是IP地址将 Varnish 添加到nginx中。

我尝试过直接将其添加为set_real_ip_from site-varnish,但这是行不通的。

尝试添加上游(如下),并尝试了set_real_ip_from varnish_backend,但没有运气

upstream varnish_backend {
    server site-varnish;
}

任何帮助,将不胜感激。我在当前工作的conf下面添加了引用。
upstream fastcgi_backend {
    server site-fpm;
}
server {
    listen 80;
    listen 443 ssl;
    server_name localhost;
    location = /ping {
        set_real_ip_from      192.168.176.2;
        real_ip_header        X-Forwarded-For;

        access_log            off;
        allow                 127.0.0.1;
        deny                  all;


        fastcgi_param         SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include               fastcgi_params;
        fastcgi_pass          fastcgi_backend;
    }
}

docker-compose.yml
version: "2"
services:
  site-varnish:
    build:
      context: ./etc/varnish/
    ports:
      - 80
    networks:
      - frontend

  site-web:
    build:
      context: ./etc/nginx/
    volumes_from:
      - site-appdata
    env_file:
      - ./global.env
    restart: always
    networks:
      - backend
      - frontend

  site-fpm:
    build:
      context: ./etc/7.2-fpm/
    ports:
      - 9000
    volumes_from:
      - site-appdata
    env_file:
      - ./global.env
    networks: 
      - backend

  site-appdata:
    image: tianon/true
    volumes:
      - ./html:/var/www/html

networks:
  frontend:
    external:
      name: webproxy
  backend:
    external:
      name: backbone

最佳答案

我已经根据@LinPy的建议将nginx版本更新为> 1.13.1,并且能够直接在conf中使用set_real_ip_from site-varnish

关于docker - 使用主机名而不是IP地址将 Varnish 服务器添加到Nginx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57583189/

相关文章:

angular - docker cloud上Angular 2上的net::ERR_CONTENT_LENGTH_MISMATCH

php - Nginx - Laravel - LEMP - 访问除/以外的任何页面时出现 403 Forbidden 错误

linux - nginx 设置为反向代理的目录重定向问题

nginx - Redis 和 Lua 中的连接

javascript - BuzzFeed 如何进行移动重定向?

apache - NGINX -> Varnish 负载平衡器 -> Apache SSL 连接 = 错误请求

apache - 带有磅的 Varnish 和 SSL

docker - Docker容器未安装数据卷

docker - 如何将值传递到 docker 文件

docker - 我可以使用 “docker commit”提交docker容器的整个状态吗?