Trouble 37

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

Pycharm 에서 matplotlib.pyplot 사용 시, module 'backend_interagg' has no attribute 'FigureCanvas' 문제

pycharm과 matplotlib.pyplot 둘 다 python 코딩할 때 굉장히 많이 쓰는데 특정 조합에서 다음과 같은 에러가 났었다. AttributeError: module 'backend_interagg' has no attribute 'FigureCanvas' 나 같은 경우, pycharm 2020 + matplotlib 3.8.2로 사용했을 때 위 오류가 났다. 위 에러는 site-packages/matplotlib.pyplot.py, line 343 에서 발생한 오류라서 matplotlib 자체 오류이고 뭔가 코딩을 잘못해서 그런 것은 아니다. 원인 이런 오류의 대부분은 버전 문제이듯이, 이 문제도 기본적으로 버전 문제가 맞다. FigureCanvas는 버전 3.6에서 deprecated..

ERROR:optimizer got an empty parameter list

최근 python으로 최적화 코드를 짜던 와중 발견한 오류다. pytorch의 nn.Parameter를 이용해서 짜거나 CVPR2023에 공개된 pypose (https://github.com/pypose/pypose) 의 pp.Parameter를 이용해서 짤 때 발견된다. 참고로 pypose는 pytorch와 호환되도록 짜여져있어서 똑같은 에러가 발생했다. 오류명에서도 알 수 있다시피 pytorch optimizer나 pypose optimizer 모두 optimzier 에게 최적화 대상이 되는 Neural network model 혹은 Error model의 파라미터를 넘겨주어야 하는데 이게 없다는 소리다. 즉, optmizer(model)로 초기화를 할 때 model.parameters()가 호출되..

import cv2 시 'numpy._DTypeMeta' object is not subscriptable 오류

pip install opencv-python으로 cv2 설치하는 것은 아주 간단한데, 설치하고 나서 다음 오류가 떴다. Traceback (most recent call last): File "/home/jseob/Desktop/yjs/codes/3DDFA_V2/demo.py", line 7, in import cv2 File "/home/jseob/anaconda3/envs/face/lib/python3.9/site-packages/cv2/__init__.py", line 181, in bootstrap() File "/home/jseob/anaconda3/envs/face/lib/python3.9/site-packages/cv2/__init__.py", line 175, in bootstrap if..

Trouble/OpenCV 2023.09.04

이미지가 일부가 깨져 열리지 않는 문제 : image file is truncated

이미지 파일이 잘 존재하고 뷰어로는 잘 열리는 상황에서도 opencv cv2.imread로 이미지가 읽히지 않는 현상이 있다. 결론부터 말하면 이미지 파일이 손상되어있는 것이 원인인데 뷰어에서는 열리므로 약간 손상되어있는 것이다. 자세히 보면 아래 사진처럼 뷰어에서 일부가 회색으로 보일 것이다. 이미지가 실제로 (128, 128, 128)을 갖는 것이 아니라 pixel에 값이 존재 하지 않는 것이다. 문제 상황 check0 = os.path.exists(img_path) # True check1 = os.path.isfile(img_path) # True cvimg = cv2.imread(img_path) # None pilimg = Image.open(img_path) # image file is tr..

Trouble/OpenCV 2023.08.25

cv2.fisheye 사용 시 error: (-215:Assertion failed) objectPoints.type() == CV_32FC3 || objectPoints.type() == CV_64FC3 in function 문제

cv2.error: OpenCV(4.7.0) /io/opencv/modules/calib3d/src/fisheye.cpp:77: error: (-215:Assertion failed) objectPoints.type() == CV_32FC3 || objectPoints.type() == CV_64FC3 in function 'projectPoints' cv2.fisheye를 쓸 일이 드물긴 하지만 가끔 어쩌다 쓸 때 위와 같은 오류를 자주 볼 수 있다. 오류명만 봐서는 사용하는 변수 타입이 float64, flaot32 중 하나로 통일이 안되어있단 뜻 같은데 타입을 맞춰도 오류가 해결되지 않기 때문에 조금 귀찮다. 그 경우 대부분 objectPoints 즉, 사용하는 3D point의 shape이 잘못되..

Trouble/OpenCV 2023.06.27

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