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

Docker-compose: comando não encontrado #666

Closed
andersonFaro9 opened this issue Aug 21, 2022 · 31 comments
Closed

Docker-compose: comando não encontrado #666

andersonFaro9 opened this issue Aug 21, 2022 · 31 comments

Comments

@andersonFaro9
Copy link

Boa tarde amigos, tudo bem?
Após tentar rodar o projeto com o comando conforme descrito: "npm run dev" tenho o seguinte erro: "linha 1: docker-compose: comando não encontrado". Como posso resolver, tentei mas não consegui.

@filipedeschamps
Copy link
Owner

@andersonFaro9 tudo bem? Você precisa ter essas dependências globais para conseguir rodar o projeto: https://github.com/filipedeschamps/tabnews.com.br#depend%C3%AAncias-globais

O que sugiro fazer é rodar o repositório através do Codespaces aqui do GitHub ou do Gitpod que já possuem todas as dependências instaladas.

@andersonFaro9
Copy link
Author

Opa, Filipe, blza? Segui conforme está no Readme.md mas o erro persisti.

@filipedeschamps
Copy link
Owner

@andersonFaro9 show, vamos descobrir o que está acontecendo 👍

Quando você digita no terminal docker --version o que aparece? E quando você digita docker-compose --version o que aparece? No meu aparece o seguinte:

❯ docker --version
Docker version 20.10.17, build 100c701

❯ docker-compose --version
Docker Compose version v2.6.1

@coffeeispower
Copy link
Contributor

coffeeispower commented Aug 22, 2022

O tabnews só roda no Linux e Mac.
E preciso do docker e docker compose para rodar os outros micro serviços como o banco de dados.

@filipedeschamps
Copy link
Owner

@coffee-is-power até onde testamos, o TabNews funciona 100% no Windows após esse detalhe aqui: #610

@coffeeispower
Copy link
Contributor

Mas e sempre melhor rodar dentro do wsl já que a maioria das ferramentas normalmente são feitas pra Linux primeiro. Na minha opiniao

@coffeeispower
Copy link
Contributor

coffeeispower commented Aug 22, 2022

Agora que eu percebi que essa issue e a número 666 :pepeCruz:
ScrawnyInsistentAmoeba-size_restricted.gif

@rodrigoKulb
Copy link
Contributor

rodrigoKulb commented Aug 22, 2022

@coffee-is-power realmente o Docker roda somente dentro do WSL no fundo dentro de um ambiente Linux.

Esse cara ajuda bem como instalar no Windows https://www.youtube.com/watch?v=05YN8F8ajBc

Agora que eu percebi que essa issue e a número 666 :pepeCruz:

Issue #666 hahaha 👿️👻️👻️🤣️

@andersonFaro9
Copy link
Author

@filipedeschamps Quando digito: Docker version, isso é o que retorna: Docker version 20.10.17, build 100c701
e no caso do compose, me retorna : "docker-compose version 1.29.2, build unknown"

@filipedeschamps
Copy link
Owner

@andersonFaro9 interessante, a versão do Docker é a mesma que tenho aqui e a versão do docker-compose está acima da que está no README: Docker Compose v1.24.1, deveria funcionar.

Então sobre o erro "linha 1: docker-compose: comando não encontrado" não tem a ver com o Docker em sí, mas em como ele está conseguindo encontrar ele no sistema eu imagino.

Qual seu sistema operacional?

@andersonFaro9
Copy link
Author

é o fedora

@filipedeschamps
Copy link
Owner

Hmmm, vai ser difícil eu conseguir debugar por aqui. Mas de qualquer forma, o que acontece se você digitar o seguinte na raiz do repositório do TabNews:

docker compose -f infra/docker-compose.development.yml up -d

@andersonFaro9
Copy link
Author

andersonFaro9 commented Aug 22, 2022

tentei isso e me retornou:

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json?all=1&filters=%7B%22label%22%3A%7B%22com.docker.compose.project%3Dinfra%22%3Atrue%7D%7D&limit=0": dial unix /var/run/docker.sock: connect: permission denied

@andersonFaro9
Copy link
Author

Daí, eu fiz login com sudo e continuo sem conseguir

@filipedeschamps
Copy link
Owner

@andersonFaro9 eu infelizmente não saberei configurar o Docker no seu ambiente.

Sugiro novamente usar um ambiente online, pois vai estar tudo pronto. Sugiro utilizar o Gitpod 🤝

@andersonFaro9
Copy link
Author

Consegui, cara... com o gitpod

@andersonFaro9
Copy link
Author

@filipedeschamps no meu caso em que nunca participei diretamente um projeto no github em que participo e posso implementar uma "feature" qual primeiro passo, busco numa issue, tento implementar e mando um push?

@coffeeispower
Copy link
Contributor

Cria uma issue, depois cria uma branch faz as suas modificações e depois crie um pull request , dar push na master não e permitido (obviamente, pq é a branch sagrada)

@coffeeispower
Copy link
Contributor

coffeeispower commented Aug 23, 2022

Tem que instalar o docker-compose, e um programa separado https://docs.docker.com/compose/install/

@andersonFaro9
Copy link
Author

Obrigado @coffee-is-power

@andersonFaro9
Copy link
Author

Quanto ao compose, instalei sim mas não foi como esperado. Estou acessando aqui com o gitpod como o Filipe sugeriu.

@rodrigoKulb
Copy link
Contributor

Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/json?all=1&filters=%7B%22label%22%3A%7B%22com.docker.compose.project%3Dinfra%22%3Atrue%7D%7D&limit=0": dial unix /var/run/docker.sock: connect: permission denied

Grande @andersonFaro9 tive o mesmo problema utilizando o Mate, um problema de permissão para acesso ao docker

Da uma olhada nesse artigo! Veja se consegue aplicar no Fedora

https://linuxhandbook.com/docker-permission-denied/#:~:text=deal%20with%20it.-,Fix%201%3A%20Run%20all%20the%20docker%20commands%20with%20sudo,the%20Docker%20daemon%20socket'%20anymore.

@kaique-soares
Copy link
Contributor

@filipedeschamps no meu caso em que nunca participei diretamente um projeto no github em que participo e posso implementar uma "feature" qual primeiro passo, busco numa issue, tento implementar e mando um push?

@andersonFaro9 seja MUITO bem vindo ao repositório do TabNews 🤝

Estamos neste momento trabalhando nas tarefas da Milestone 5 que tem como objetivo principal lançar publicamente o TabNews e você pode encontrar mais detalhes na issue #493 👍

E @andersonFaro9, eu também nunca havia participado de um projeto no Github com outras pessoas e a experiência aqui tem sido sensacional, acredito que não teria lugar melhor para eu ter dado o primeiro passo 👍

E eu comecei aqui faz pouco tempo, se não me engano eu cheguei entre o meio (quase fim) da Milestone 4 e o inicio da atual. E algo que me ajudou muito foi, antes de tocar em código, entender o que tava acontecendo aqui e fiz isso:

  1. Começando pelo diário de desenvolvimento
  2. Conhecendo a estrutura do projeto, estudando ela, cavucando mesmo!
  3. Olhando issues/PRs anteriores, que estão muito bem organizados nas milestones passadas e tem MUITO conhecimento registrado 😍
  4. E nesse meio tempo surgiram issues que eu vi que davam para eu resolver, outras que dei uma patinada e a turma me ajudou, e no fim deu tudo certo!

Não necessariamente tu precisa seguir por esse caminho, mas me ajudou muito e acredito que seja uma boa opção 👍

No mais, caso precise de ajuda estamos aqui, beleza!

@CarlosZiegler
Copy link

CarlosZiegler commented Aug 23, 2022

Tem um Pr meu que deu início a documentação da API, mas tem que ser lapidado e inserir os endpoints, talvez um bom início pra vc :) @andersonFaro9

@andersonFaro9
Copy link
Author

Obrigado amigos pelo retorno, estou de fato alegre em participar desse projeto. Lerei em breve cada comentário novamente.

@andersonFaro9
Copy link
Author

Ontem numa entrevista, citei a Tabnews e falei um pouco desse projeto. A pessoa perguntou se sabia teste unitários e disse que não, mas tenho uma dúvida: o que seria de fato testes unitiários? conheço pouco de teoria do tdd, imagino que não é o mesmo que testes unitários, alguém pode esclarecer?

@coffeeispower
Copy link
Contributor

Aqui não fazenos testes unitários, apenas testes de integração da API, que consiste em fazer um request para API e verificar o que retorna dado tais inputs.

@coffeeispower
Copy link
Contributor

coffeeispower commented Aug 23, 2022

Tdd e um modo de desenvolver cria novas features e encontrar bugs usando testes.
Testes são mini programas que verificam a integridade e funcionalidade do código.
Testes também podem ser considerados como especificações, ou seja, eles são como requisitos expressos em código,e você precisa cumprir esses requisitos para ele passar.

@herculesgabriel
Copy link

@andersonFaro9, eu tive um problema parecido num outro projeto há um tempo atrás e talvez possa ser o seu caso. Antes de tudo, roda no seu terminal o comando which docker-compose e fala pra gente qual é a saída. No meu caso está assim:

docker-compose: aliased to docker compose

Breve explicação: nas novas instalações do compose "docker-compose" não é mais um binário do sistema, mas sim um apelido para o binário correto. Por isso pode ser que o script do package.json não encontre esse binário e retorne erro (mesmo que seja possível utilizar normalmente fora do projeto).

@Ryannnkl
Copy link
Contributor

Ryannnkl commented Feb 26, 2023

Opa!

como o @andersonFaro9 explicou, docker-compose é um alias para o comando docker compose. Segundo o proprio site do docker o comando docker-compose vai cair em desuso para a nova versão do compose v2 em Junho:

image

Solução

mudar os scripts no package.json para utilizar a nova sintaxe do docker compose, os parametros continuam os mesmos só o docker-compose que vai mudar para docker compose

@aprendendofelipe
Copy link
Collaborator

Considerando que o @andersonFaro9 disse que conseguiu, e que o PR #1315 adicionou a compatibilidade com os comandos docker-compose e docker compose ao mesmo tempo, mesmo para quem não usa o Docker Desktop, estou fechando essa issue. 👍

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

9 participants