Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Problemas iniciando um jogo localmente #13

Closed
falcao-g opened this issue Mar 3, 2024 · 5 comments
Closed

Problemas iniciando um jogo localmente #13

falcao-g opened this issue Mar 3, 2024 · 5 comments

Comments

@falcao-g
Copy link

falcao-g commented Mar 3, 2024

Olá pessoal, gostaria de dizer que eu gostei bastante da ideia do site!

Mas estou com alguns problemas ao fazer a minha partida local iniciar, a história é a seguinte:

Eu nunca tinha mexido com docker antes, ontem eu baixei para testar o the-dummies-py e tomei um erro dizendo que minha porta 5000 estava ocupada, tudo bem, eu só mudei a propriedade ports para usar a porta 4000:

    ports:
      - "4000:4000"
      - "8080:8080"

Depois disso ele executou perfeitamente!

Porém então eu decidi testar o the-dummies-js, e depois de testar sem e com essa modificação, nenhum dos dois times carregavam e eu tomei vários erros

Como eu não entendo muito de docker, eu não sei muito o que fazer para consertar, testei mudar a propriedade do time AWAY para ficar igual o arquivo de python, que funcionava, só tirando o serviço builder que não existe em js, então ficou:

  player_01:
    image: node:18
    working_dir: /app
    command: npm run start
    depends_on:
      game_server:
        condition: service_healthy
      watcher:
        condition: service_healthy
    volumes:
      - "./:/app"
    network_mode: "host"
    environment:
      - BOT_NUMBER=1
      - BOT_TEAM=home
      - BOT_GRPC_URL=game_server:5000
  player_02:
    image: node:18
    working_dir: /app
    command: npm run start
    depends_on:
      game_server:
        condition: service_healthy
      watcher:
        condition: service_healthy
    volumes:
      - "./:/app"
    network_mode: "host"
    environment:
      - BOT_NUMBER=2
      - BOT_TEAM=home
      - BOT_GRPC_URL=game_server:5000

e assim por diante

Essa alteração consertou o time AWAY que agora carrega todo e aparece no meu campo, mas meu time home ainda não aparece, segue uma parte do meu terminal:
image

Após isso tudo cai

Fora as alterações especificadas aqui, o resto está igual ao repositório, alguém sabe o que tem de errado?

@rubens21
Copy link
Member

rubens21 commented Apr 2, 2024

Oi @falcao-g , desculpe pela demora em responder!
Acho que não recebi nenhuma notificaćão sobre seu comentário.

O servidor do jogo roda na porta 5000 por padrão. Quando vc trocou a porta no arquivo docker-compose.yml, vc apenas trocou a porta exposta, mas o servidor continuou usando a porta 5000 internamente.
Por isso os bots não conseguiram conectar, e deu timeout.

O erro inicial pode ter sido algum outro servico rodando.

Você já conseguiu rodar o jogo?

@falcao-g
Copy link
Author

oi! não consegui rodar esse repo não, só o de python, minha porta 5000 está ocupada pelo TCP, e no de python quando eu troco para a 4000 ele funciona de boa, aqui ele não carrega nenhum dos dois times

@rubens21
Copy link
Member

Entendi.

Se vc ainda quiser rodar o JS, tenta não expor a porta 5000. Vc na verdade não precisa dela se você não for rodar o bot direto na máquina host (ou seja, fora do container).

Pra fazer isso, mude as portas do serviço "game_server" no arquivo docker-conpose.yml para:

    ports:
      - "8080:8080"

@rubens21
Copy link
Member

Entendi.

Se vc ainda quiser rodar o JS, tenta não expor a porta 5000. Vc na verdade não precisa dela se você não for rodar o bot direto na máquina host (ou seja, fora do container).

Pra fazer isso, mude as portas do serviço "game_server" no arquivo docker-conpose.yml para:

    ports:
      - "8080:8080"

Ignore esse comentário!

Vou atualizar esse arquivo, entendi pq não funcionou pra vc

@rubens21
Copy link
Member

@falcao-g , o arquivo docker-compose.yml agora aceita uma variavel de ambiente para definir a porta do servidor: GAME_GRPC_PORT

se vc rodar (no linux) GAME_GRPC_PORT=5555 docker compose up vc vai trocar a porta e evitar o problema.

Desculpa a demora.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants