데몬의 도커 오류 응답: "충돌... 컨테이너에서 이미 사용 중"
PC에서 Docker를 사용하여 Quantum GIS를 실행하고 있습니다. 여기서 찾은 지침은 Docker-qgis-desktop - QGIS 데스크톱을 실행하는 간단한 Docker 컨테이너입니다.
다음과 같은 오류 메시지가 표시되기 시작한 지난 주까지는 모든 것이 정상적으로 실행되고 있습니다.
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.
이 사이트에서 단서를 찾아봐도 이게 무슨 뜻인지 잘 모르겠어요.나는 이 일이 일어나기 전에 아무것도 변경하지 않았고 다음 명령을 사용하여 컨테이너를 성공적으로 시작했습니다.
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
이걸 어떻게 고칠 수 있을까요?
그것은 이름이 있는 용기처럼 보입니다.qgis-desktop-2-4
시스템에 이미 존재합니다.아래 명령의 출력을 확인하여 실제로 존재하는지 확인할 수 있습니다.
$ docker ps -a
위 명령 출력의 마지막 열은 이름에 대한 것입니다.
용기가 있는 경우 다음을 사용하여 용기를 제거합니다.
$ docker rm qgis-desktop-2-4
아니면 강제로 사용하거나,
$ docker rm -f qgis-desktop-2-4
그런 다음 새 컨테이너를 만들어 보십시오.
명령 대신:docker run
다음을 사용해야 합니다.
docker start **CONTAINER ID**
컨테이너가 이미 존재하기 때문입니다.
이 오류가 자주 발생하여 사용하지 않는 모든 컨테이너를 한 번에 일괄 제거합니다.
docker container prune
더하다-f
프롬프트 없이 강제로 제거합니다.
사용하지 않는 모든 용기를 나열하는 방법(제거하지 않음):
docker container ls -a --filter status=exited --filter status=created
다른 개체(네트워크, 볼륨 등)를 잘라내는 방법에 대한 자세한 예는 여기를 참조하십시오.
저처럼 구글에서 이곳으로 와서 하나의 공유 서비스로 여러 개의 도커 합성 파일을 사용하여 컨테이너를 만들고자 하는 사람들을 위해:
데이터베이스 도커 컨테이너 등을 공유하는 다른 프로젝트가 있는 경우도 있습니다.첫 번째 실행만 DB-Docker를 시작해야 하며, 두 번째 실행은 DB가 이미 실행 중임을 감지하고 이를 건너뜁니다.이러한 행동을 달성하기 위해서는 도커가 동일한 네트워크와 동일한 프로젝트에 배치되어야 합니다.도커 컨테이너 이름도 같아야 합니다.
첫 번째: 도커 합성에서 동일한 네트워크 및 컨테이너 이름 설정
프로젝트 1의 도킹 스테이션:
version: '3'
services:
service1:
depends_on:
- postgres
# ...
networks:
- dockernet
postgres:
container_name: project_postgres
image: postgres:10-alpine
restart: always
# ...
networks:
- dockernet
networks:
dockernet:
프로젝트 2의 도킹 스테이션:
version: '3'
services:
service2:
depends_on:
- postgres
# ...
networks:
- dockernet
postgres:
container_name: project_postgres
image: postgres:10-alpine
restart: always
# ...
networks:
- dockernet
networks:
dockernet:
두 번째: 다음을 사용하여 동일한 프로젝트 설정-p
두 파일을 동일한 디렉토리에 param 또는 param으로 저장합니다.
docker-compose -p {projectname} up
실행하는 동안 이 오류가 발생했습니다.docker run
splunk dev 서버에 있습니다.다음 단계가 유용했습니다.
- 실행:
docker container ls -a
- Get the
containerName
" "NAMES"의 출력입니다. - 실행:
docker restart <containerName>
아래 명령을 사용하면 문제가 해결됩니다.
docker rm -f container_name
최신 kartoza/qgis-desktop에 문제 없음
도망친
docker pull kartoza/qgis-desktop
다음에
docker run -it --rm --name "qgis-desktop-2-4" -v ${HOME}:/home/${USER} -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix$DISPLAY kartoza/qgis-desktop:latest
충돌 오류 없이 여러 번 시도했습니다. 사전에 앱을 종료해야 합니다.또한 매개 변수가 약간 다릅니다.
간편한 세 가지 솔루션
(하나 선택)
략
--name
컨테이너를 시작할 때 (이름을 지정할 필요가 없으며, 지정하지 않을 경우 도커가 임의의 이름을 지정합니다.)이름 변경: 다니예을다이제공합름)을 입력합니다.
--name mycontainer
--name mycontainer2
)해당 이름으로 이미 존재하는 컨테이너를 삭제합니다.예.
docker container rm <container_name>
메모들
컨테이너를 생성하려고 하지만 같은 이름의 컨테이너가 이미 있을 때 오류가 발생합니다.
실행하면 기존 시스템을 찾을 수 있습니다.
docker ps -a | grep <container_name>
아니면 그냥docker ps -a
모든 기존 컨테이너를 검사합니다.
언급URL : https://stackoverflow.com/questions/31676155/docker-error-response-from-daemon-conflict-already-in-use-by-container
'programing' 카테고리의 다른 글
Android 레이아웃 요소의 배경색 설정 (0) | 2023.08.21 |
---|---|
스위프트 언어에서 대소문자를 무시한 두 문자열을 비교하는 방법은 무엇입니까? (0) | 2023.08.21 |
Android에서 탐색 드로어를 여는 스와이프 제스처 사용 안 함 (0) | 2023.08.21 |
SwiftUI NavigationLink는 클릭하지 않고 목적지 보기를 즉시 로드합니다. (0) | 2023.08.21 |
jQuery로 모든 양식 요소(입력, 텍스트 영역 및 선택)를 가져오려면 어떻게 해야 합니까? (0) | 2023.08.21 |