Trouble/Docker 10

libnvidia-ml.so.1: cannot open shared object file: no such file or directory: unknown. 문제

Docker 컨테이너 잘 쓰다가 갑자기 다시 run하니까 다음과 같은 오류가 떴다.docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running hook #0: error running hook: exit status 1, stdout: , stderr: Auto-detected mode as 'legacy'nvidia-container-cli: initialization error: load library failed: libnvi..

Trouble/Docker 2024.05.13

--gpus 안 먹힐 때, nvidia-container-toolkit 설치 안 될 때

docker container 띄울 때 GPU를 써야할 경우 --gpus all를 추가한다. 이 때 nvidia-driver 멀쩡히 잘 설치했고, 다른 코드에서 GPU 사용 잘 되는데 docker container 만들 때만 다음과 같은 오류가 날 때가 있다.docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]]. 원인을 검색해보면 nvidia-container-toolkit이 없어서 그렇다고 한다. 해결법sudo apt-get install nvidia-container-toolkit sudo apt-get update 간단하게 nvidia-container-toolkit을 설치해주면 ..

Trouble/Docker 2024.05.07

Timezone, geographic area 설정으로 인한 Docker build 무한 대기 해결법

간혹 Dockerfile 내 설치하는 패키지 중 time zone, greographic area처럼 유저가 직접 설정하는 내용이 있을 경우, docker build가 더 진행되지 않고 대기 상태에 빠져 무한 루프 돌고 있을 때가 있다.  해결법1. 직접 입력해주기ENV $TIMEZONE=Asia/SeoulRUN ln -snf /usr/share/zoneinfo/$TIMEZONE /etc/localtime 2. 무시하도록 하기ENV DEBIAN_FRONTEND=noninteractive 개인적으로 후자로 박아넣는 것이 더 좋더라. interactivate input을 받는 내용 중 크리티컬한 것들은 별로 없었음.

Trouble/Docker 2024.05.07

Docker 이미지 빌드 오타 문제 - ERROR: failed to solve: failed to read dockerfile 그리고 ERROR: "docker buildx build" requires exactly 1 argument.

ERROR: failed to solve: failed to read dockerfile: open /var/lib/docker/tmp/buildkit-mount837859110/Dockerfile: no such file or directory 도커 이미지 빌드 시 위 오류를 볼 수 있다. 아주 단순한 실수. 도커 파일을 이름을 "Dockerfile"이 아닌 다른 이름으로 해뒀기 때문이다. 예를 들어, "DockerFile"로 해뒀으면 위 오류가 난다. (내가 자주 그럼 ㅠ) 항상 정확하게 하기 위해서 -f tag를 쓰는 것이 좋다. 도커 파일의 이름을 직접 지정해주는 방식. docker build IMAGE_NAME:TAG -f ./DockerCustomFile . ERROR: "docker buil..

Trouble/Docker 2024.01.29

Docker 이미지 빌드 시, interactive 무한루프 벗어나기

DockerFile로 이미지를 직접 빌드할 때 가끔 중간에 무한 루프 걸리는 부분이 있다. 설치하려는 라이브러리 중 일부가 사용자의 입력을 받은 뒤 설치되도록 되어있다면 무한 루프가 걸린다. 대표적인 예로, ubuntu base image를 가져와서 시작하는 대부분은 다음과 같은 문제일 것이다. Preconfiguring packages ... Configuring tzdata ------------------ Please select the geographic area in which you live. Subsequent configuration questions will narrow this down by presenting a list of cities, representing the time zo..

Trouble/Docker 2024.01.29

Docker 사용 시 Error response from daemon: could not select device driver "" with capabilities: [[compute utility graphics gpu]] 문제

멀쩡히 docker를 잘 사용하다가 nvidia driver를 업데이트한 이후로 다음 오류가 발생했다. Error response from daemon: could not select device driver "" with capabilities: [[compute utility graphics gpu]] 1) 기존 만들어둔 컨테이너를 start/attach하는 경우 2) 새로운 컨테이너는 run하는 경우 위 두 경우 모두에서 같은 오류가 났다. 해결법 sudo apt-get update sudo apt-get install nvidia-container-toolkit sudo systemctl restart docker nvidia container toolkit을 설치하고 docker를 재시작하면 해..

Trouble/Docker 2023.12.12

Docker container 내에서 Open3D visualization 문제 : [Open3D WARNING] GLFW Error: X11: Failed to open display unix:1

Docker container 내에서 open3d를 이용한 geometry visualization할 경우, 다음과 같은 오류가 뜰 수 있다. No protocol specified [Open3D WARNING] GLFW Error: X11: Failed to open display unix:1 [Open3D WARNING] Failed to initialize GLFW [Open3D WARNING] [DrawGeometries] Failed creating OpenGL window. OpenCV를 이용한 image visualization을 할 때 비슷한 에러가 날 경우, 다음 argument를 추가함으로써 간단히 해결했지만 Open3D는 몇가지가 더 있다. -v /tmp/.X11-unix:/tmp/...

Trouble/Docker 2023.04.18

Docker 컨테이너 내 opencv-python 설치 시 ImportError: libGL.so.1 문제

ImportError: libGL.so.1: cannot open shared object file: No such file or directoryPython opencv를 사용하고자 하면 단순하게 pip install opencv-python을 입력하면 끝이라 큰 이슈가 없지만 Docker 컨테이너 내에서 같은 명령어를 치면 위 오류가 날 수 있다. 딱 봐도 libGL이 없다는 오류라는 것을 알 수 있는데 libgl1-mesa-glx를 설치해주면 된다. 컨테이너에 직접 설치할 경우, 다음과 같이 하면 끝이고pip install libgl1-mesa-glx Docker 이미지에 선반영되게 만들고 싶다면, DockerFile 내에 다음을 추가해주면 된다. -y tag를 까먹지 말자.~~~~ 생략 RUN a..

Trouble/Docker 2023.03.21

Docker run 시 executable file not found in $PATH: unknown 문제

Docker image를 pull 받은 후 run할 때 뜬금없이 다음 에러가 보일 때가 있다. docker: Error response from daemon: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: SOMETHING: executable file not found in $PATH: unknown. 위 에러에서 SOMETHING은 다양한 태그로 바뀔 수 있다. 가령 --gpus, --privileged 처럼 자주 사용하는 태그가 될 수도 있고 새로 넣는 명령어가 될 수도 있다. 원인은 SOMETHING에 들어가는 것들이 아니라 argumen..

Trouble/Docker 2023.01.05

Docker 사용 시 docker daemon에 연결 안 될 경우

Docker를 사용하는 초반에 각종 키워드 익히기도 바쁜데, 무슨 키워드를 쳐도 다음과 같은 오류가 날 때가 있다. Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running? 위 오류는 근데 단순히 docker engine이 활성화가 안 되어있어서 그런 것이다. sudo systemctl status docker 위 명령어를 쳤을 때, docker engine이 inactivate 되어있는 것을 볼 수 있다. sudo systemctl start docker sudo systetmctl enable docker 단순히 활성화 시켜주면 해결된다.

Trouble/Docker 2022.03.02