- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
运行 4 个 docker 容器:server/client/nginx/mongo reverse-proxy客户端似乎在端口 4200 上工作,我可以看到我的应用程序和路由工作。尝试注册用户时,我请求将下面的 httpclient post 发送到名为“myserver”的 Docker 容器,它应该调用 api。我收到此 DNS 错误消息。
当在 resolv.conf(它显示 127.0.0.11)中查看 NGINX 容器时,这是正确的 dns Docker 在容器内解析 dns-es。当我从容器内 ping 到另一个容器的名称时,它起作用了。当我从服务器端口 3000 上的容器内部和外部远程登录时,它的工作原理与客户端端口 4200 上的远程登录一样好那么当我尝试在我的网站上注册帐户时无法解析 myserver 的原因可能是什么。就好像注册调用是从容器外部发出的,所以它无法解析它,这是正常行为吗?
let url = 'http://myserver:3000/api/register';
docker-compose.yml 版本:'3'
services:
nginx:
build: ./nginx
# Map Nginx port 80 to the local machine's port 80
volumes:
- ./dist:/usr/share/nginx/html
ports:
- "80:80"
depends_on:
- client
networks:
- app-network
# Build the container using the client Dockerfile
client:
build: ./
# This line maps the contents of the client folder into the container.
volumes:
- ./:/usr/src/app
ports:
- "4200:4200"
networks:
- app-network
myserver:
build: ./express-server
volumes:
- ./express-server:/usr/src/server
environment:
- NODE_ENV=development
depends_on:
- mongo
ports:
- "3000:3000"
networks:
- app-network
# Link the client container so that Nginx will have access to it
mongo:
environment:
- AUTH=yes
- MONGO_INITDB_ROOT_USERNAME=superAdmin
- MONGO_INITDB_ROOT_PASSWORD=admin123
image: mongo
volumes:
- /var/mongodata/data:/data/db
ports:
- "27017:27017"
networks:
- app-network
networks:
app-network:
driver: bridge
nginx 默认.conf
worker_processes 2 ;
events {
worker_connections 1024;
}
http {
upstream my-server {
server myserver:3000;
}
upstream client {
server client:4200;
}
server {
location / {
proxy_pass http://client;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $remote_addr;
}
location /api/ {
proxy_pass http://my-server;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
proxy_set_header X-Forwarded-For $remote_addr;
}
}
}
cbdb2e00c6db meanchat_nginx "nginx -g 'daemon ..." 15 minutes ago Up 15 minutes 0.0.0.0:80->80/tcp meanchat_nginx_1
22406a1e9a31 meanchat_client "npm start" 15 minutes ago Up 15 minutes 0.0.0.0:4200->4200/tcp meanchat_client_1
aa024855d201 meanchat_myserver "npm start" About an hour ago Up 15 minutes 0.0.0.0:3000->3000/tcp meanchat_myserver_1
b657bd6db7b5 mongo "docker-entrypoint..." 5 hours ago Up 15 minutes 0.0.0.0:27017->27017/tcp b657bd6db7b5_meanchat_mongo_1
172.20.0.1 - - [09/Jan/2018:00:30:02 +0000] "GET /sockjs-node/info?t=1515457802565 HTTP/1.1" 200 90 "http://localhost/register" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
172.20.0.1 - - [09/Jan/2018:00:30:03 +0000] "GET /register HTTP/1.1" 304 0 "http://localhost/register" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
172.20.0.1 - - [09/Jan/2018:00:30:03 +0000] "GET /sockjs-node/044/zh1t2skg/websocket HTTP/1.1" 101 162 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"172.20.0.1 - - [09/Jan/2018:00:30:03 +0000] "GET /inline.bundle.js HTTP/1.1" 304 0 "http://localhost/register" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
172.20.0.1 - - [09/Jan/2018:00:30:03 +0000] "GET /polyfills.bundle.js HTTP/1.1" 304 0 "http://localhost/register" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
172.20.0.1 - - [09/Jan/2018:00:30:03 +0000] "GET /vendor.bundle.js HTTP/1.1" 304 0 "http://localhost/register" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
172.20.0.1 - - [09/Jan/2018:00:30:03 +0000] "GET /styles.bundle.js HTTP/1.1" 304 0 "http://localhost/register" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
172.20.0.1 - - [09/Jan/2018:00:30:03 +0000] "GET /scripts.bundle.js HTTP/1.1" 304 0 "http://localhost/register" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
172.20.0.1 - - [09/Jan/2018:00:30:03 +0000] "GET /main.bundle.js HTTP/1.1" 200 796563 "http://localhost/register" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
172.20.0.1 - - [09/Jan/2018:00:30:06 +0000] "GET /assets/img/cryptoowls.jpg HTTP/1.1" 304 0 "http://localhost/register" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
172.20.0.1 - - [09/Jan/2018:00:30:06 +0000] "GET /roboto-v15-latin-regular.7e367be02cd17a96d513.woff2 HTTP/1.1" 304 0 "http://localhost/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
172.20.0.1 - - [09/Jan/2018:00:30:06 +0000] "GET /sockjs-node/info?t=1515457806564 HTTP/1.1" 200 90 "http://localhost/register" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"
172.20.0.1 - - [09/Jan/2018:03:31:24 +0000] "GET/sockjs-node/info?t=1515468684563 HTTP/1.1"200 90 "http://localhost/register ""Mozilla/5.0 (Windows NT 10.0;Win64;x64) AppleWebKit/537.36(KHTML,如 Gecko)Chrome/63.0.3239.132 Safari/537.36"
最佳答案
来自评论的回答:
当使用反向代理连接到容器时,应用程序使用的所有 URL 都需要指向该反向代理而不是应用程序。通常,您通过在 URL 中提供不带主机名的路径来执行此操作。如果您计划使用基于虚拟路径的反向代理,您需要更进一步并在您的 URL 中使用相对路径。这一切都需要在应用程序发送给客户端的响应中发生。
关于docker nginx ERR_NAME_NOT_RESOLVED,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48160019/
我有两个部署,一个用于后端,一个用于前端,还有两个服务。前端服务设置为 LoadBalancer 并按预期公开(使用 minikube 隧道)。后端服务不应该暴露在集群之外,因此我没有设置任何类型的服
有什么想法吗? DocumentRoot "C:/laragon/www/monetize/public/" ServerName monetize.app ServerAlias *.monet
我已经在我的本地主机上安装了 socket.io,现在我将查看客户端/服务器通信。 我已经使用节点“server.js”启动了服务器。 我收到这个错误 ERR_NAME_NOT_RESOLVED 用这
我将Docker用于我的dev本地堆栈。 我为symfony项目配置了一个主机名: 网址是:http://dev.test.proprietes-privees.com/ 在我的symfony中,我尝
运行 4 个 docker 容器:server/client/nginx/mongo reverse-proxy客户端似乎在端口 4200 上工作,我可以看到我的应用程序和路由工作。尝试注册用户时,我
我已经在 GKE 中部署了一个 mongo db、Spring Boot BE、Angular 应用程序。我的 FE 服务是一个负载均衡器,它需要与我的 BE 连接才能获取数据,但我的浏览器出现控制台
我有一个非常简单的 docker 设置——React WebApp(管理面板)和 .netCore Customer Api,它们连接到桥接网络。我实际上是在创建健康检查监视器。 两个容器都已连接,我
我确实收到 Android 手机用户发来的消息,称我的网站未加载。 当 Android 手机点击链接访问我的网站时,会出现错误:net::err_name_not_resolved 在计算机和 iPh
我有一个 django 项目,我正在尝试将幻灯片加载到光滑的轮播中( http://kenwheeler.github.io/slick/ )。我有以下内容: your content your
我目前正在使用带有 LAMP 的树莓派 (RPI) 在我的本地网络上托管我的网页,该网络使用 websocket 流式传输一些表示 LED 状态的数据。我的问题是,在尝试建立 websocket 连接
我的应用程序允许用户指定一个服务器名称,这是他们安装我们的 api 的地方。这样应用程序的其余部分就可以调用该端点。 但是,如果我们收到类似 ERR_NAME_NOT_RESOLVED 的错误,我需要
我正在向 AWS 发出 Get 请求。通过浏览器(Javascript)获取存储桶列表。我收到以下错误: Failed to load resource: net::ERR_NAME_NOT_RESO
我有一个通过 webview 加载的应用程序。我能够登录到已通过 webview 启动的应用程序。但是在注销期间,它会针对发送注销请求的服务器不断抛出 ERR_NAME_NOT_RESOLVED 错误
当我尝试使用 reangular 进行放置或删除时,出现此错误,并且 getList() 工作正常,当我要编辑 mi 对象时,我创建一个像这样的对象 edited = Restangular.copy
您好,我正在使用 JW 播放器在我的网站中播放 Flash 视频。视频可以在除 chrome 之外的浏览器中播放。我尝试过在 Mozilla 和 Safari 中播放。当我检查 chrome 控制台时
这是 head 标签中的代码: 在控制台中我得到以下信息: GET https://use.fontawesome.com/releases/v5.7.1/css/all.css net::ERR_
我在从 Digital Ocean 切换到 Cloudways Digital Ocean 计划时遇到了一个有趣的问题。样式和图像未加载到网站上,出现错误“ERR_NAME_NOT_RESOLVED”
在 Windows 8 x64(最新的稳定版本)上使用 Android Studio。我有一个非常简单的项目,只有一个指向 google.com 的 WebView,但每次我在模拟器中启动该应用程序时
我正在编写一个向远程服务器发出 HTTP 请求的 javascript 应用程序。用户将输入主机名。 如果他们输入无法解析的 DNS 名称,我想提供诊断消息。这是当前代码: var req, t, u
flutter webview net::ERR_NAME_NOT_RESOLVED请注意,发布时显示的问题不是调试 WebView( initialUrl: widget.url, onP
我是一名优秀的程序员,十分优秀!