docker hello-world를 실행할 수 없음 : 장치의 마운트 지점을 찾을 수 없음


12

도커를 처음 사용합니다.

의 소프트웨어 관리 도구에서 도커를 설치했습니다 mint 17.

내가 실행할 때 docker run hello-world내가 나타납니다

FATA[0000] Error response from daemon: Cannot start container a6bcc1ede2c38cb6b020cf5ab35ebd51b64535af57fa44f5966c37bdf89c8781: [8] System error: mountpoint for devices not found 

서비스 로그 ( /var/log/upstart/docker.log)를 보면 다음과 같습니다.

ERRO[0617] Couldn't run auplink before unmount: exec: "auplink": executable file not found in $PATH 
ERRO[0617] Couldn't run auplink before unmount: exec: "auplink": executable file not found in $PATH 

: 도커 버전

Client version: 1.6.2
Client API version: 1.18
Go version (client): go1.2.1
Git commit (client): 7c8fca2
OS/Arch (client): linux/amd64
Server version: 1.6.2
Server API version: 1.18
Go version (server): go1.2.1
Git commit (server): 7c8fca2
OS/Arch (server): linux/amd64

: 도커 정보

Containers: 2
Images: 1
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 5
 Dirperm1 Supported: false
Execution Driver: native-0.2
Kernel Version: 3.13.0-24-generic
Operating System: Ubuntu 14.04.3 LTS
CPUs: 8
Total Memory: 15.6 GiB
Name: DWDEV-HOME-HBABAI
ID: K4GX:DTV6:547V:U3BO:YEOA:WVNU:NZEZ:L3GG:4W7U:IXNS:X3QK:5PVR
WARNING: No memory limit support
WARNING: No swap limit support

최신 정보:

sudo apt-get install aufs-tools도커 서비스를 설치 하고 다시 시작했습니다. 나는 더 이상 다음과 같은 오류가 발생하는 것입니다 :

ERRO[0617] Couldn't run auplink before unmount: exec: "auplink": executable file not found in $PATH 

그러나 로그에서도 커가 시작되면 메모리 마운트 포인트에 대해 경고하는 것을 알 수 있습니다.

INFO[0000] -job init_networkdriver() = OK (0)           
/var/run/docker.sock is up
WARN[0000] mountpoint for memory not found              
INFO[0000] Loading containers: start.         

나는 cgroup과 관련이 있다고 생각하지만 ... 그 기술에 대해서는 아무것도 모른다. (아직) ...


귀하의 질문이 바닥에 떨어지고 조각으로 부서진 것 같습니다. 우리를 위해 함께 넣어주세요.
Scott

@Scott-죄송합니다 ... 지금 더 나아졌습니다 ... 지적 해 주셔서 감사합니다
hba

답변:


23

내가 설치해야한다는 것이 밝혀졌다 cgroup-lite. 어둠 속에서 촬영되었지만이 답변을 따랐습니다.


알다시피, 나는 어느 시점에서 그것을 스스로 발견 한 다음 잊어 버렸습니다. 이제 다시 질문에 대해 기억하고 기억했습니다.
0xC0000022L

에서 데비안 , 해당 패키지라고 cgroupfs가 장착
베이스

1

이 문제에 대한 해결책은 오류 문자열 "장치를 찾을 수 없음"을 검색 할 때 찾은 검색 결과에 없었기 때문에 2020 년에 데비안에서이 문제를 보는 사람들을 위해 여기에 다른 답변을 추가하겠습니다.

배경:

  • Google Cloud Platform에서 실행되는 Debian 8.11
  • 두 개의 컨테이너가 실행중인 상태에서 5 주 전에 Docker를 설치했습니다.

컨테이너가 추락 한 것을 갑자기 깨달았습니다. 원격으로 발생 가능한 유일한 원인은 하위 폴더가 볼륨으로 매핑 된 호스트에서 상위 폴더를 삭제했기 때문입니다. 또 다른 이유는 추가 물리적 장치를 장착하기 때문일 수 있습니다.

어떤 경우에도 최종 결과는 도커 컨테이너를 시작하려고하면 질문에 오류 메시지 ( " mountpoint for devices not found")가 표시되고 재부팅 (및 커널 업그레이드)이 발생하지 않는 것입니다.

문제를 디버깅하기 위해 취한 단계는

  1. 로그를 검사하십시오 journalctl -xn | less.. 실제로 너무 많은 추가 정보를 포함하지 않았습니다
  2. Docker 데몬을 중지하십시오 ( /etc/init.d/docker stop).
  3. /etc/docker/daemon.json단독 컨텐츠가 있는 파일 추가{"debug": true}
  4. docker 데몬을 다시 시작하여 실패했는지 확인하십시오.
  5. 더 많은 정보로 채워진 로그를 검사하십시오.

이러한 cgroup관련 오류는 다음 과 같은 답을 얻었습니다.

Jan 13 20:17:15 dev-diffia-no dockerd[9022]: time="2020-01-13T20:17:15.964631675Z" level=warning msg="Your kernel does not support cgroup memory limit"
Jan 13 20:17:15 dev-diffia-no dockerd[9022]: time="2020-01-13T20:17:15.964654637Z" level=warning msg="Unable to find cpu cgroup in mounts"
Jan 13 20:17:15 dev-diffia-no dockerd[9022]: time="2020-01-13T20:17:15.964667575Z" level=warning msg="Unable to find blkio cgroup in mounts"
Jan 13 20:17:15 dev-diffia-no dockerd[9022]: time="2020-01-13T20:17:15.964680057Z" level=warning msg="Unable to find cpuset cgroup in mounts"
Jan 13 20:17:15 dev-diffia-no dockerd[9022]: time="2020-01-13T20:17:15.964750643Z" level=warning msg="mountpoint for pids not found"
Jan 13 20:17:15 dev-diffia-no dockerd[9022]: time="2020-01-13T20:17:15.980250151Z" level=debug msg="Cleaning up old mountid : start."
Jan 13 20:17:15 dev-diffia-no dockerd[9022]: Error starting daemon: Devices cgroup isn't mounted

좋아, 뭔가에 대한 cgroups장착. 이로 인해이 경우에 적용될 수 있는 다른 cgroup 문제에 대한 해결 방법을 찾았습니다.

  1. /etc/init.d/docker stop
  2. cgroupfs-mount
  3. /etc/init.d/docker start

이제 Docker를 다시 시작해도 로그에는 여전히 몇 줄의 cgroup 관련 오류가 포함됩니다.

Jan 13 20:24:42 dev-diffia-no dockerd[9775]: time="2020-01-13T20:24:42.258571633Z" level=warning msg="Your kernel does not support cgroup memory limit"
Jan 13 20:24:42 dev-diffia-no dockerd[9775]: time="2020-01-13T20:24:42.258591020Z" level=warning msg="Unable to find cpu cgroup in mounts"
Jan 13 20:24:42 dev-diffia-no dockerd[9775]: time="2020-01-13T20:24:42.258937091Z" level=warning msg="mountpoint for pids not found"

그러나 그중 절반 ( blkio, cpuset)이 사라졌으며 더 중요한 것은 다음 줄을 읽었습니다.

Jan 13 20:24:42 dev-diffia-no dockerd[9775]: time="2020-01-13T20:24:42.259420798Z" level=info msg="Loading containers: start."

그리고 마지막으로

Unit docker.socket has finished starting up.

따라서 기본적으로 cgroup을 다시 마운트하면 문제가 해결되었습니다. 다시 부팅 할 필요가 없습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.