docker 部署项目后日志的ip地址不对,都是容器的ip

40 阅读1分钟

问题描述:Docker部署时,请求可能通过容器反向代理、Docker网络桥接、宿主机端口映射等,导致获取到的是代理服务器ip或容器内网ip,而非真实客户端ip.

解决步骤:

修改nginx的配置

server {
    listen 80;
    server_name 你的域名或IP;

    location / {
        proxy_pass http://容器名或容器IP:端口;  # 例如 http://tomcat:8080
        # 透传真实IP相关头信息
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;  # 客户端真实IP
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  # 代理链IP列表
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}