小编gre*_*van的帖子

为什么我的 websocket 连接在 60 秒内关闭?

我有一个由 nginx 代理的 Angular Web 应用程序。应用程序中有一个 websocet 功能,相关部分如下所示:

  location /ws {
    proxy_http_version 1.1;
    proxy_set_header Connection "Upgrade";
    proxy_set_header Upgrade $http_upgrade;
    proxy_pass http://websocket.server:9090/ws;
    proxy_set_header Host $host;
  }
Run Code Online (Sandbox Code Playgroud)

docker-composenginx 是 dockerized 的,并通过自定义构建的映像在我的机器上运行:

FROM node:alpine as node-build
WORKDIR /app
ADD ...
RUN npm install
RUN npm run build --prod

FROM nginx:alpine
ADD nginx.conf ./
COPY --from=node-build /app/... /usr/share/nginx/html
Run Code Online (Sandbox Code Playgroud)
version: "3"
services:
  frontend:
    build:
      context: .
    ports:
    - 4200:80
    volumes:
      - ./nginx.conf:/etc/nginx/conf.d/default.conf
Run Code Online (Sandbox Code Playgroud)

除了其他几个位置之外,nginx.conf 中没有其他任何内容:

server {
  listen 80;
  server_name frontend;
  location / {...}
  location …
Run Code Online (Sandbox Code Playgroud)

nginx docker

2
推荐指数
1
解决办法
6450
查看次数

标签 统计

docker ×1

nginx ×1