我还在学习 nginx 并尝试使用nginx为我的春季启动应用程序进行简单的重定向。我已设法使用docker设置所有内容这是我的 docker文件和我的 default.conf 文件。
DockerFile
RUN apt-get update -y && apt-get install -y nginx
RUN rm -f /etc/nginx/sites-enabled/default
ADD default.conf /etc/nginx/conf.d
/etc/nginx/conf.d 中的 default.conf文件
我正在从 Dockerfile 执行 .sh 文件,该文件将启动nginx服务并启动jar文件。 我无法弄清楚我在这里做错了什么,我的配置是错误的还是我应该删除 nginx.conf 文件并用 default.conf 内容替换其内容.i尝试用 localhost 替换 default_server ,但没有任何帮助。我的春季启动应用程序在端口8080上运行。server {
listen 80;
listen [::]:80;
server_name default_server;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
location / {
proxy_set_header X-Forwarded-Proto http;
proxy_pass http://localhost:8080/testing;
}
}
答案 0 :(得分:0)
localhost
并未指向主机的环回接口,而是指向容器的环回设备。您需要更改proxy_pass
配置才能使用主机的IP地址(另外,请确保您的spring引导应用程序正在侦听0.0.0.0而不仅仅是localhost)。