Nginx 转发 Docker Socket 配置指南
使用 Nginx 转发请求到 Docker Socket
以下是将 Nginx 配置为反向代理,并将请求转发到 Docker Socket (/var/run/docker.sock) 的示例:
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://unix:/var/run/docker.sock;
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_pass指令将请求转发到http://unix:/var/run/docker.sock,也就是 Docker Daemon 监听的 Unix Socket 文件。proxy_set_header指令设置了以下 HTTP 标头:Host: 将请求的 Host 标头设置为原始请求的 Host 值。X-Real-IP: 将客户端真实的 IP 地址传递给 Docker 容器。X-Forwarded-For: 用于识别代理服务器并记录客户端连接的真实 IP 地址,包含客户端 IP 和所有中间代理服务器的 IP。
请注意:
- 请将
example.com替换为您自己的域名。 - 确保 Nginx 进程有权限访问 Docker Socket 文件 (
/var/run/docker.sock),例如将 Nginx 用户添加到 Docker 用户组。 - 以上配置仅供参考,请根据您的实际需求进行修改。
原文地址: https://www.cveoy.top/t/topic/jpQz 著作权归作者所有。请勿转载和采集!