Este documento explica como configurar e executar o projeto GeroCuidado no Windows, abordando um problema comum relacionado ao formato dos finais de linha dos arquivos (problema comum entre os alunos que trabalharam no projeto).
Este documento serve para quaisquer repositório do backend, contudo, o repositório que utilizaremos de exemplo é APIUSUARIO;
Comando inicial: Para rodar o Docker, utilize:
docker-compose up
Caso o comando gere um erro relacionado ao script entrypoint.sh, durante o funcionamento da API, siga as instruções abaixo.
Este erro ocorre porque o arquivo entrypoint.sh está usando finais de linha no formato LF (Linux/MacOS), enquanto o Docker no Windows pode esperar o formato CRLF, causando conflitos.
- Verifique o WSL -- dentro do seu terminal (não necessariamente aberto no repositório), digite:
wsl --list --all
-
Se o Ubuntu estiver listado: prossiga para o próximo passo.
-
Se o Ubuntu não estiver listado: instale-o com:
wsl install
Após a instalação, configure-o como padrão:
wsl --set-default Ubuntu
- Acessar o projeto no WSL: Navegue até o diretório do projeto e abra o WSL com:
wsl
Em seguida, abra o VS code no WSL com:
code .
- Verificar o formato de finais de linha: Use o comando abaixo para verificar o arquivo
cat -v ./.docker/entrypoint.sh
- Se o final de cada linha exibir ^M: O arquivo está com finais de linha no formato CRLF, que deve ser corrigido.
- Instalar a ferramenta dos2unix: No terminal do Ubuntu, execute:
sudo apt install dos2unix
- Caso de algum erro nessa etapa, verifique se seu sudo está atualizado com "sudo apt update";
- Corrigir o formato do arquivo: Use o comando abaixo para corrigir os finais de linha do arquivo:
dos2unix ./.docker/entrypoint.sh
- Para outros arquivos com o mesmo problema: Substitua o caminho no comando acima pelo caminho do arquivo que deseja corrigir.
- Testar os finais de linha: Verifique novamente o arquivo para garantir que o formato foi corrigido:
cat -v ./.docker/entrypoint.sh
- Se o ^M não aparecer no final de cada linha, parabéns, seu código está no padrão LF e pronto para uso!
Após corrigir os finais de linha, rode novamento o docker:
docker-compose up
E seja feliz trabalhando com o GERO!