PHPSocket.io + Docker?

Приветствую.
Никак не получается завести PHPsocket демона внутри контейнера.
Локально все работает, то есть по localhost:3000 соединение проходит.
Как только пытаюсь запустить его внутри образа с пыхом, пишет в браузере CORS ERROR, при попытке соединения через домен, либо 502 NGINX.
Пытался по разному пробрасывать порты, ничего не получается. Нет ответа на 3000 порту.

docker-compose
phpsocket.io:
    container_name: socketio
    restart: always
    image: llaumgui/php:7.4-fpm
    ports:
      - 3000:3000
    volumes:
      - ./:/var/www/html
    networks:
      - default
    links:
      - nginx
    command: /bin/sh -c "cd /var/www/html && php server.php start -d"

index.js
const socket = io("http://socket.dev", { path: "/ws" });
или
const socket = io("ws://localhost:3000");

server.php
<?php

use Workerman\Worker;
use PHPSocketIO\SocketIO;

require_once __DIR__ . "/vendor/autoload.php";

$io = new SocketIO(3000);

nginx
location ^~ /ws {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy false;

        proxy_pass http://0.0.0.0:3000;
        proxy_redirect off;

        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
  • Вопрос задан
  • 109 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы