Estou usando o Docker no meu PC para executar o Quantum GIS com as seguintes instruções que encontrei aqui: docker-qgis-desktop - Um contêiner simples do docker que executa o QGIS desktop
Tudo estava funcionando bem até a semana passada, quando comecei a receber esta mensagem de erro:
Error response from daemon: Conflict. The name "qgis-desktop-2-4" is already in use by container 235566ae17b8. You have to delete (or rename) that container to be able to reuse that name.
Não tenho muita certeza do que isso significa, apesar de procurar pistas neste site. Eu não havia mudado nada antes disso e estava iniciando com êxito o contêiner com este comando:
sudo docker run --rm --name="qgis-desktop-2-4" -i -t -v ${HOME}:/home/${USER} -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix$DISPLAY kartoza/qgis-desktop:latest
Como posso consertar isso?
groupadd: GID '0' already exists useradd: user 'root' already exists No protocol specified Warning: qgis.bin: cannot connect to X server unix:0.0
docker restart
, oudocker stop
&docker start
deve ajudá-lo.Em vez de comando:
docker run
Você deveria usar:
porque o contêiner já existe
Mais informações
fonte
Recebi muito esse erro, agora faço uma remoção em lote de todos os contêineres não utilizados de uma só vez:
adicione
-f
para forçar a remoção sem aviso prévio.Para listar todos os contêineres não utilizados (sem remoção):
Veja aqui mais exemplos de como remover outros objetos (redes, volumes, etc.).
fonte
Para pessoas que chegam aqui do google como eu e só querem criar contêineres usando vários arquivos de composição de encaixe com um serviço compartilhado:
Às vezes, você tem projetos diferentes que compartilhariam, por exemplo, um contêiner do docker de banco de dados. Somente a primeira execução deve iniciar o DB-Docker, a segunda deve detectar que o banco de dados já está em execução e pular isso. Para alcançar esse comportamento, precisamos que os Dockers fiquem na mesma rede e no mesmo projeto . Além disso, o nome do contêiner do docker precisa ser o mesmo.
1º: defina o mesmo nome de rede e contêiner no docker-compose
docker-compor no projeto 1:
docker-compor no projeto 2:
2º: defina o mesmo projeto usando
-p
param ou coloque os dois arquivos no mesmo diretório.docker-compose -p {projectname} up
fonte