【发布时间】:2019-04-12 06:32:54
【问题描述】:
我最近发现了 Docker,我正在将我的 usenet 服务转移到它上面。我在 Docker 上运行了 sonarr、radar、NZBget 和 NZBhydra,但在服务之间传递文件时遇到问题。我正在使用 nginx 反向代理来映射到这些服务中的每一个。
当我尝试从 NZBhydra 获取 nzb 时,它失败了,因为它试图映射到 http://nzbhydra:7891/nzbhydra/foo.nzb?ap=bar,这显然失败了,因为 http://nzbhydra:7891 不是有效地址。
Dockerfile:
FROM nginx
RUN rm /etc/nginx/conf.d/default.conf
COPY default.conf /etc/nginx/conf.d/
default.conf:
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
location /sonarr {
proxy_pass http://sonarr:8989;
}
location /radarr {
proxy_pass http://radarr:8585;
}
location /nzbhydra {
proxy_pass http://nzbhydra:7891;
}
location /nzbget {
proxy_pass http://nzbget:6789;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
我希望 URL 映射到 http://localhost:7891/nzbhydra/foo.nzb?ap=bar 或 http://nzbhydra/nzbhydra/foo.nzb?ap=bar
【问题讨论】:
-
我忘了提,这是我正在运行的 docker 命令: docker run -d --name mynginx --link=sonarr --link=radarr --link=nzbhydra --link=nzbget -p 80:80 nginx
-
你如何运行你的容器?
-
如果我理解正确,'docker start
'
标签: docker nginx nginx-reverse-proxy