Używałem Dockera na moim komputerze do uruchomienia Quantum GIS z następującymi instrukcjami, które znalazłem tutaj: docker-qgis-desktop - Prosty kontener docker, który działa na pulpicie QGIS
Wszystko działało dobrze do zeszłego tygodnia, kiedy zacząłem otrzymywać ten komunikat o błędzie:
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.
Nie jestem do końca pewien, co to oznacza, pomimo wyszukiwania wskazówek na tej stronie. Nie zmieniłem niczego przed tym wydarzeniem i pomyślnie uruchomiłem kontener za pomocą tego polecenia:
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
Jak mogę to naprawić?
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
lubdocker stop
&docker start
powinien ci pomóc.Zamiast polecenia:
docker run
Powinieneś użyć:
ponieważ kontener już istnieje
Więcej informacji
źródło
Mam ten błąd całkiem sporo, więc teraz robię zbiorcze usuwanie wszystkich nieużywanych pojemników naraz:
dodaj
-f
do usuwania siły bez pytania.Aby wyświetlić wszystkie nieużywane pojemniki (bez usuwania):
Zobacz tutaj więcej przykładów przycinania innych obiektów (sieci, wolumenów itp.).
źródło
Dla osób, które lądują tutaj z Google, takich jak ja i chcą po prostu budować kontenery przy użyciu wielu plików docker-compose z jedną wspólną usługą:
Czasami masz różne projekty, które współużytkują np. Kontener bazodanowy. Tylko pierwsze uruchomienie powinno uruchomić DB-Docker, drugie powinno wykryć, że DB już działa i pominąć to. Aby osiągnąć takie zachowanie, Dockery muszą znajdować się w tej samej sieci i w tym samym projekcie . Również nazwa kontenera Dockera musi być taka sama.
1st: Ustaw tę samą nazwę sieci i kontenera w docker-compose
docker-compose w projekcie 1:
docker-compose w projekcie 2:
2nd: Ustaw ten sam projekt za pomocą
-p
param lub umieść oba pliki w tym samym katalogu.docker-compose -p {projectname} up
źródło