可以使用docker正确关闭websocket

可以使用docker正确关闭websocket,websocket,docker,Websocket,Docker,此问题关系与此其他相关:。我不想进行复制/粘贴,因此您可以转到另一个问题,了解有关代码的详细信息 我用docker上的Websocket运行一个程序。它允许连接,但当我执行window.ws=newwebsocket('ws://127.0.0.1:8000/');ws.close(),服务器似乎没有收到客户端关闭后的通知。当我在没有docker的情况下运行相同的代码时,它是有效的 这是我的Dockerfile: FROM ruby:2.2.2 RUN apt-get update -qq &

此问题关系与此其他相关:。我不想进行复制/粘贴,因此您可以转到另一个问题,了解有关代码的详细信息

我用docker上的Websocket运行一个程序。它允许连接,但当我执行
window.ws=newwebsocket('ws://127.0.0.1:8000/');ws.close(),服务器似乎没有收到客户端关闭后的通知。当我在没有docker的情况下运行相同的代码时,它是有效的

这是我的Dockerfile:

FROM ruby:2.2.2

RUN apt-get update -qq && apt-get install -y build-essential
RUN apt-get install -y qt5-default libqt5webkit5-dev xvfb

RUN mkdir /app

ADD . /app

WORKDIR /app

ONBUILD RUN chown -R app /app

RUN gem install bundler

RUN cd /app

RUN bundle install

ONBUILD EXPOSE 3000 8000
这是我的docker compose文件:

db:
  image: postgres
  ports:
    - "15432:5432"
web:
  image: gcorbel/optikcaminterface_web
  command: ruby app.rb
  volumes:
    - .:/app
  ports:
    - "3000:3000"
  environment:
    RACK_ENV: development
  links:
    - db
test:
  image: gcorbel/optikcaminterface_web
  volumes:
    - .:/app
  command: rspec
  environment:
    RACK_ENV: test
  links:
    - db
ws:
  image: gcorbel/optikcaminterface_web
  command: ruby websocket.rb
  volumes:
    - .:/app
  ports:
    - "8000:8000"
我使用docker compose up ws运行服务器

Docker和Websockets之间有问题吗