1
resposta

Erro Aplicação Frontend.

Para quem precise ajustar a aplicação durante o curso: (referência: https://github.com/foguinhoperuca/alura-drf-school)

Clonei a aplicação frontend e rodei ela conforme orientado no curso (docker-compose up --build). A primeira vez, ok. Na segunda vez, após atualizar o .env para o endereço da minha api rodando com o docker-compose up (tanto rodando como o parametro --build ou não) a aplicação não funcionava. Somente com o comando git restore . na raiz do projeto. A mensagem de erro era conforme abaixo.

A solução encontrada foi rodar usando o comando docker compose up (tanto rodando como o parametro --build ou não) onde, após alterar o .env, a aplicação agora está subindo.

Uma observação: o build está dando o seguinte warning:

1 warning found (use docker --debug to expand): FromAsCasing: 'as' and 'FROM' keywords' casing do not match (line 1)

A solução é alterar o Dockerfile e acertar o 'case' do alias (as --> AS).

Recreating 0214b47c033b_3697-django-frontend_nginx_1 ... 



ERROR: for 0214b47c033b_3697-django-frontend_nginx_1  'ContainerConfig'



ERROR: for nginx  'ContainerConfig'

Traceback (most recent call last):

  File "/usr/bin/docker-compose", line 33, in <module>

    sys.exit(load_entry_point('docker-compose==1.29.2', 'console_scripts', 'docker-compose')())

             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 81, in main

    command_func()

  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 203, in perform_command

    handler(command, command_options)

  File "/usr/lib/python3/dist-packages/compose/metrics/decorator.py", line 18, in wrapper

    result = fn(*args, **kwargs)

             ^^^^^^^^^^^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 1186, in up

    to_attach = up(False)

                ^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/cli/main.py", line 1166, in up

    return self.project.up(

           ^^^^^^^^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/project.py", line 697, in up

    results, errors = parallel.parallel_execute(

                      ^^^^^^^^^^^^^^^^^^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/parallel.py", line 108, in parallel_execute

    raise error_to_reraise

  File "/usr/lib/python3/dist-packages/compose/parallel.py", line 206, in producer

    result = func(obj)

             ^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/project.py", line 679, in do

    return service.execute_convergence_plan(

           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/service.py", line 579, in execute_convergence_plan

    return self._execute_convergence_recreate(

           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/service.py", line 499, in _execute_convergence_recreate

    containers, errors = parallel_execute(

                         ^^^^^^^^^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/parallel.py", line 108, in parallel_execute

    raise error_to_reraise

  File "/usr/lib/python3/dist-packages/compose/parallel.py", line 206, in producer

    result = func(obj)

             ^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/service.py", line 494, in recreate

    return self.recreate_container(

           ^^^^^^^^^^^^^^^^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/service.py", line 612, in recreate_container

    new_container = self.create_container(

                    ^^^^^^^^^^^^^^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/service.py", line 330, in create_container

    container_options = self._get_container_create_options(

                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/service.py", line 921, in _get_container_create_options

    container_options, override_options = self._build_container_volume_options(

                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/service.py", line 960, in _build_container_volume_options

    binds, affinity = merge_volume_bindings(

                      ^^^^^^^^^^^^^^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/service.py", line 1548, in merge_volume_bindings

    old_volumes, old_mounts = get_container_data_volumes(

                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^

  File "/usr/lib/python3/dist-packages/compose/service.py", line 1579, in get_container_data_volumes

    container.image_config['ContainerConfig'].get('Volumes') or {}

    ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^

KeyError: 'ContainerConfig'
1 resposta

Oi, Jefferson! Como vai?

Achei muito útil você relatar sua experiência com o docker-compose e a necessidade de restaurar arquivos para a aplicação voltar a funcionar. Esse tipo de relato é valioso, pois ajuda outras pessoas que podem enfrentar o mesmo cenário, principalmente com ajustes no .env e variações no build da imagem.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!