Unhandled error event
[Concluído]
[ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1278:16)
[ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1278:16)
[ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1278:16)
[ioredis] Unhandled error event: Error: connect ECONNREFUSED 127.0.0.1:6379
at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1278:16)
✔ Listening for redis events...
node:internal/process/promises:279
triggerUncaughtException(err, true /* fromPromise */);
^
[UnhandledPromiseRejection: This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). The promise rejected with the reason "Redis could not subscribe.".] {
code: 'ERR_UNHANDLED_REJECTION'
Observações: No .env o Redis já está sem senha. O container está tudo ok, pois tenho uma fila rodando nele já para confirmação de cadastro e redefinição de senha via e-mail. Vim um erro parecido acima, mas pelo que me pareceu o meu ainda é diferente.
Olá, Denison!
Tudo bem?
Precisa informar a senha no laravel-echo-server também, está dando conexão recusada justamente por conta do password.
Chegou a informar a senha no laravel-echo-server?
Tudo jóia. Não informei nenhuma senha no laravel-echo-server. Como inserir essa senha ?
Assim:
"databaseConfig": {
"redis": {
"port": "6379",
"host": "127.0.0.1",
"password": "your_redis_password",
"db": 0
}
},
Em produção, você pode pegar a partir de uma variável de ambiente:
"databaseConfig": {
"redis": {
"port": "6379",
"host": "127.0.0.1",
"password": "${REDIS_PASSWORD}",
"db": 0
}
},
Meu redis não tem senha configurada.
.env
docker-compose.yml
Ah sim, achei que tinha.
O seu broadcasting está jogando para o redis?
Acredito que sim;
--
Está rodando o comando dentro do container?
.env
estou rodando o comando fora do container.
Compartilha comigo o seu projeto, através do GitHub, que te ajudo a identificar onde pode estar o erro.
Mandei um e-mail sobre essa opção. Fico no aguardo da resposta.
Posso compartilhar por aqui arquivos de configurações. Só pedir.
Beleza.
--
Só mais duas perguntas, o BroadcastProvider está habilitado no arquivo de configuração config/app.php?
As versões dos packages, estão compatíveis?
https://github.com/especializati/curso-laravel-com-socket.io/blob/master/package.json#L26
Sobre a primeira pergunta, a linha abaixo está comentada.
Sobre a segunda pergunta, nosso arquivo está bem diferente. Mas deve ser por que meu problema está dando na aula 2 de configuração do laravel-echo-server e a aula de configurar o Broadcats e socket.io é a 5. Então na prática ainda não cheguei nesse ponto.
Precisa habilitar o provider, remover o comentário dessa linha.
As versões dos packages (socket.io e laravel-echo) é importante manter igual;
Continua o mesmo erro. Muito estranho. olhou o projeto pra ver o que pode ser esse erro ?
Esse aquivo que vc mandou da linha 3 a 10 está diferente do meu arquivo.
https://github.com/especializati/curso-laravel-com-socket.io/blob/master/package.json#L03
Só agora que consegui olhar o projeto.
--
No GitHub, o provider de broadcast está comentado, precisa remover o comentário para funcionar.
Exemplo: https://github.com/especializati/curso-laravel-com-socket.io/blob/master/config/app.php#L174
---
Não achei os eventos (app/Events/) no seu projeto.
Exemplo: https://github.com/especializati/curso-laravel-com-socket.io/tree/master/app/Events
---
No seu package.json não encontrei os packages de frontend, de qualquer forma, quando for adicionar, atento as versões. Beleza?
https://github.com/especializati/curso-laravel-com-socket.io/blob/master/package.json#L26
Todas essas correções já foram feitas. E o erro persiste o mesmo.
Sobre a pasta de Eventos. o comando laravel-echo-server start não teria que funcionar do mesmo jeito. Pela video aula até o ponto que cheguei a tentar implementar no meu projeto, estamos ainda só configurando o que vai ser usado.
Eu já não tenho mais a minima ideia do que possa estar acontecendo.
Atualiza no GitHub por favor, que vou testar assim que der, e já achando os erros te reporto.
Já atualizei, está na branch teste-realtime.
Só não cheguei a aula de criar o Evento. mas se tu acha que é isso, me avisa que chego até ela e atualizo no git. Muito obrigado.
Rodei o seu projeto, segue o passo à passo realizado:
1 - Remover o comentário do provider BroadcastServiceProvider (config/app.php)
2 - npm install && npm run dev
3 - cp .env.example .env
4 - docker-compose up -d
Aqui uma baita e ingrata supresa, o seu setup docker não estava funcionando
Tive que usar o setup: https://github.com/especializati/setup-docker-laravel
Ai finalmente:
docker-compose up -d
docker-compose exec app bash
composer install --ignore-platform-reqs
php artisan key:generate
5 - Rodar os eventos de real-time
php artisan queue:work
Está faltando as configurações do laravel-echo-server (dessa aula: https://academy.especializati.com.br/aula/configurar-laravel-echo-server)
--
Sobre o erro, quando teve? Quando rodou qual comando? Print por favor!
Opa.
https://drive.google.com/file/d/1UJlagTkEJlF0TLFZZurmfqmiUOtZosha/view?usp=share_link
Fiz um vídeo pra tu entender melhor, onde está o erro. Fico no aguardo da resposta.
Precisa estar logado para conseguir responder a este ticket!
Clique Aqui Para Entrar!