Tag: socket.io

Loadbalancing,Websockets和NodeJS错误

我有两个NodeJS应用程序,socket.io位于本地(docker)NGINX负载均衡器后面。 文恩只有一个应用程序是一切正常。 当我添加第二次,我得到每秒重新加载或如此以下错误。 WebSocket connection to 'wss://[HOST]/socket.io/?EIO=3&transport=websocket&sid=9CmO27cJsdmqMwwXAAAK' failed: Error during WebSocket handshake: Unexpected response code: 400 这里我的NGINXconfiguration: user nginx; worker_processes 1; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } http { upstream myhost { least_conn; server 192.168.99.1:3333; server 192.168.99.1:4444; } server { listen 80; listen 443 ssl; server_name [HOST]; ssl_certificate server.crt; ssl_certificate_key server.key; […]

套接字事件不在docker器容器,docker组成的浏览器中触发

没有dockerizing应用程序,一切工作正常。 将应用程序迁移到Docker时,我无法在浏览器中接收套接字事件。 我能够从浏览器和控制台接收服务器中的套接字事件。 泊坞窗,compose.yml database: image: mongo:latest container_name: minipool_database ports: – "27017:27017" seed: build: seed container_name: mp_seed links: – database application: (Node v.7.9.0 / socket-io: 1.4.8 / Angular 1.4.9 / angular-socket-io: 0.7.0) build: application container_name: mp_application links: – database ports: – "8080:8080" Express服务器 'use strict'; process.env.NODE_ENV = process.env.NODE_ENV || 'development'; var connection = ''; if(process.env.NODE_ENV […]

当多个连接打开时,Ping超时

我的设置如下: node.js中的一个socket.io服务器可以通过express来使用 一个运行socket.io客户端的java程序 我正在创build5个套接字,然后为我的一个客户端获取ping timeout 。 断开连接后,重新连接并再次出现错误。 我已经尝试启动5次的Java程序指定1套接字的实例,它运作良好。 我在Localhost工作。 5 connection per java with 1 java -> FAIL 1 connection per java with 5 java -> GOOD 所以我认为有一个问题也许与socket.io-java-client但无法find任何有关它。 我已经尝试了关于pingInterval / pingTimeout的不同服务器configuration。 pingTimeout为10000 , pingInterval为5000 ,每隔30秒断开一次。 pingTimeout为30000 , pingInterval为5000 ,我每分钟都断开连接。 我的node.jsconfiguration: // Socket.io options const opts = { // Interval between two ping in ms pingInterval: […]

在docker容器内导入socketio失败?

我已经构build了一个docker镜像,每个使用这个镜像的容器都会运行一个名为“run.py”的应用程序。 run.py使用socket.io:import import socketio docker运行后我得到以下错误: Traceback (most recent call last): File "run.py", line 1, in <module> import socketio File "/usr/local/lib/python2.7/site-packages/socketio/__init__.py", line 8, in <module> from .zmq_manager import ZmqManager File "/usr/local/lib/python2.7/site-packages/socketio/zmq_manager.py", line 5, in <module> import eventlet.green.zmq as zmq File "/usr/local/lib/python2.7/site-packages/eventlet/__init__.py", line 10, in <module> from eventlet import convenience File "/usr/local/lib/python2.7/site-packages/eventlet/convenience.py", line 6, in <module> from […]

用socket.io写入空对象

我目前正在尝试通过与Node.js的Socket.io发送一些信息,但它看起来像我做错了什么,我真的不知道为什么。 我的机器上有一些使用Docker的容器,我为我的应用程序使用了Docker.io节点包,以获得我想要的所有信息。 这是发送数据的服务器端function io.sockets.on('connection', function(socket){ socket.emit('message',container); }); var container = docker.containers.list(handler); function handler(err, res) { if (err) throw err; console.log("data returned from Docker as JS object: ", res); } 这是获取套接字消息的客户端代码 var socket = io.connect('/'); socket.on('message', function(data){ console.log(data); }); 我通过套接字(容器列表看起来像这样)发送的数据: [ { Command: 'top ', Created: 1393878688, Id: 'fa46297fa16ff184673077545437a64f2adaf62db8774be696d76cc9f52b7881', Image: 'ubuntu:12.04', Names: [ '/cranky_archimedes' ], Ports: […]

Socket.io,连接到docker容器内的socket

我的应用程序正在使用与Socket.io库websocket。 在前面,我打开一个连接到后端sockets,像这样: io.connect(window.location.origin) 当我的后端在我的电脑上运行时,一切工作正常。 但是,当我在Docker容器中运行它时,我的客户端上出现这个错误: WebSocket connection to 'ws://localhost/socket.io/?EIO=3&transport=websocket' failed: Invalid frame header

在开发之前或之后的Docker镜像? (初学者)

我正在尝试用HTML5canvas构build一个带有Node.js和Socket.io的网站。 我是新来的docker和容器,并试图了解他们如何工作。 我有几个想帮助理解的问题。 在应用程序开发之前或之后应该安装docker吗? 我可以在Mac上部署Docker吗? 如何设置使用该技术的环境? 问题可能是天真的,但我是一个初学者。 我研究了谷歌和大多数文章解释什么docker是什么,它是如何比虚拟机好,但没有多less显示使用情况或方法。 任何线索将不胜感激。

Docker Socket.IO只能用于docker run -it标志

我正在尝试使用以下命令对Socket.IO进行dockerize。 它的工作原理是,客户端可以存档握手并连接到套接字服务器。 //this works perfectly docker run -it socket_io "node" "app" 不过,我想要的是运行我的套接字服务器以下称号。 但不知何故,当我使用这个命令运行套接字服务器时,客户端卡在套接字轮询/连接阶段。 //this does not work, client stuck in socket polling docker run socket_io "node" "app" 任何想法为什么发生这种情况,以及如何解决?

为什么我需要在netty socketio中提供主机名以及如何在docker中处理socketio?

我正在为一些项目使用netty-socketio。 我build立了一个像这样的服务器: Configuration config = new Configuration(); config.setHostname("localhost"); config.setPort(8080); SocketIOServer server = new SocketIOServer(config); server.start(); 关于这一切,我只有很less的知识,我想知道为什么我需要在这里设置主机名? 只是给港口听是不够的? 另外,如何在Docker中处理这个问题:我有我的服务器的IP地址,以及容器的虚拟IP地址,我应该给哪一个IP? 如果我有另一个服务器运行在不同的容器(但在同一台机器上),我希望这两个进行通信,如何处理所有这些IP来实现这一目标呢? 这样的沟通会如同全部在本地主机一样高效吗?

如何在Docker容器中使用Socket.io连接套接字?

我有一个小型的套接字服务器在一个docker容器中,服务器看起来像 var app = require('express')(); var server = require('http').Server(app); var io = require('socket.io')(server, {origins: 'localhost:*'}); io.on('connection', function (socket) { console.log('Connected'); }); const PORT = 8081; const HOST = '0.0.0.0'; server.listen(PORT, HOST); 和docker文件是 FROM keymetrics/pm2-docker-alpine:latest WORKDIR /root RUN apk update && \ apk upgrade && \ apk add git ENV HOME /root COPY socket.js ./ COPY […]