Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Erro ao executar o docker-compose up

Estou obtendo o erro abaixo ao executar o comando docker-compose up

File "/home/admindev/.local/lib/python3.10/site-packages/urllib3/connectionpool.py", line 496, in _make_request
    conn.request(
TypeError: HTTPConnection.request() got an unexpected keyword argument 'chunked'

Como devo fazer para corrigir este problema ?

Estou usando o ubuntu via WSL2 e as seguintes versões:

. Docker version 23.0.4, build f480fb1

. docker-compose version 1.29.2, build unknown

. openjdk version "1.8.0_382" OpenJDK Runtime Environment (build 1.8.0_382-8u382-ga-1~22.04.1-b05) OpenJDK 64-Bit Server VM (build 25.382-b05, mixed mode)

4 respostas

Olá, Audalio

Pelo que entendi, você está enfrentando um problema ao executar o comando docker-compose up e está recebendo um erro relacionado ao módulo urllib3 do Python.

O erro que você está enfrentando é comum quando há uma incompatibilidade entre as versões do Python e do urllib3. O erro está relacionado ao argumento 'chunked' que não é esperado pela função HTTPConnection.request().

Uma possível solução para o seu problema seria atualizar o módulo urllib3 para a versão mais recente, utilizando o comando pip install --upgrade urllib3. Caso você tenha mais de uma versão do Python instalada em sua máquina, certifique-se de usar o pip correspondente à versão do Python que está sendo usada para rodar o docker-compose (no seu caso, Python 3.10).

Outra possibilidade seria criar um ambiente virtual Python (usando venv, por exemplo) e instalar o docker-compose dentro desse ambiente. Isso garantiria que as dependências do docker-compose estão isoladas do restante do sistema.

Aqui está um exemplo de como criar um ambiente virtual e instalar o docker-compose dentro dele:

python3 -m venv myenv
source myenv/bin/activate
pip install docker-compose

Depois de criar e ativar o ambiente virtual, você pode tentar executar o comando docker-compose up novamente.

Espero ter ajudado e bons estudos!

Olá Otávio Prado !

Muito obrigado pela resposta completa e também pela rapidez no retorno. Executei as duas maneiras que você indicou, mas, infelizmente o problema continua. Somente contextualizando: apenas baixei o arquivo de download prometheus-grafana.zip disponibilizado pela Alura para este treinamento e estou tentando criar a infraestrutura existente no arquivo docker-compose.yaml (existente na raiz do diretório descompactado).

Inicialmente executei o comando pip install --upgrade urllib3

A mensagem foi de uma instalação bem sucedida (logo abaixo), mas o erro continuou sendo o mesmo ao executar o docker-compose up

Collecting urllib3
  Using cached urllib3-2.0.4-py3-none-any.whl (123 kB)
Installing collected packages: urllib3
Successfully installed urllib3-2.0.4

Após criar o environment (myenv) tentei instalar o docker-compose, conforme a sua 2a sugestão. Neste caso, começou a instalar mas deu problema de licença deprecated, conforme pode ser visto abaixo:

Collecting PyYAML<6,>=3.10
  Using cached PyYAML-5.4.1.tar.gz (175 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  error: subprocess-exited-with-error

  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [62 lines of output]
      /tmp/pip-build-env-pjm5gi52/overlay/lib/python3.10/site-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in `setup.cfg`
      !!

De acordo com as mensagens, o que tenho que fazer agora é o seguinte:

/tmp/pip-build-env-pjm5gi52/overlay/lib/python3.10/site-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in `setup.cfg`
!!

        ********************************************************************************
        The license_file parameter is deprecated, use license_files instead.

        By 2023-Oct-30, you need to update your project and remove deprecated calls
        or your builds will no longer be supported.

        See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.

Mesmo após receber o erro acima, executei novamente o docker-compose up, recebendo o erro abaixo, que aparentemente é o mesmo erro inicial: docker.errors.DockerException: Error while fetching server API version: HTTPConnection.request() got an unexpected keyword argument 'chunked'

Se tiver alguma dica, desde já agradeço. Tentarei encontrar a solução na página html informada acima. Caso eu consiga resolver, informarei aqui.

Obrigado!!!

solução!

Vamos tentar algumas etapas adicionais para solucionar esse problema:

Verifique as versões Python em seu ambiente:

Certifique-se de que você está usando a versão correta do Python em seu ambiente virtual (Python 3.10, conforme mencionado). Execute python --version para verificar a versão padrão do Python em seu sistema e compare com a versão usada em seu ambiente virtual. Atualize o Docker Compose:

Verifique se você está usando a versão mais recente do Docker Compose. Você pode atualizá-lo com o seguinte comando:

pip install --upgrade docker-compose

Verifique o arquivo docker-compose.yaml:

Certifique-se de que o arquivo docker-compose.yaml não está corrompido ou contém configurações incorretas. Pode ser útil compará-lo com uma versão válida ou verificado por outros. Limpe o cache do Docker:

Às vezes, problemas persistentes podem ser resolvidos limpando o cache do Docker. Execute os seguintes comandos:

docker-compose down
docker system prune -a

Reinicie o WSL2:

Se nenhuma das etapas acima resolver o problema, tente reiniciar o WSL2: arduino

wsl --shutdown Após seguir essas etapas, tente executar o docker-compose up novamente. Se o problema persistir, pode ser necessário verificar se há problemas específicos em seu ambiente ou configuração que podem estar causando esse erro. Certifique-se de verificar as mensagens de erro detalhadas para obter mais informações sobre a causa do problema.

Olá Otávio Prado!

Mais uma vez agradeço suas orientações. Tenho certeza que se segui-las conseguirei resolver o problema.

Entretanto, consegui resolver de uma forma e prefiro não 'mexer em time que está ganhando' :)

Fiz o seguinte:

. logout e login em seguida

. Depois executei os comandos :

$ pip install requests==2.28.1
...
Successfully installed charset-normalizer-2.1.1 requests-2.28.1 urllib3-1.26.16
$ docker-compose up

Após a instalação do requests 2.28.1, o docker-compose funcionou. Como já havia conseguido compilar a aplicação JAVA, executei-a e agora está tudo funcionando.

Muito Obrigado por tudo!