Recent Posts
«   2025/08   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Today
Total
관리 메뉴

코드민수

[도커] 도커 이미지 생성, 저장, 실행(리눅스) 본문

[기타]

[도커] 도커 이미지 생성, 저장, 실행(리눅스)

코드민수 2023. 4. 22. 15:19
BIG

Linux, 3090Ti, CUDA11.2, cudnn 8.2 기준

1. 파이토치 환경 도커 이미지 만들기

 

1) pull pytorch image (Base Image)

https://hub.docker.com/r/pytorch/pytorch/tags?page=1&ordering=last_updated

 

Docker

 

hub.docker.com

docker pull pytorch/pytorch:1.8.1-cuda11.1-cudnn8-runtime

2) run pytorch image (컨테이너 생성)

docker run --gpus all --shm-size=16g --name=cimjuk_yolo -ti pytorch/pytorch:1.8.1-cuda11.1-cudnn8-runtime /bin/bash
docker run --gpus all --shm-size=<메모리> --name=<컨테이너명> -ti <이미지:tag> /bin/bash

3) 데이터, 소스코드 복사

docker cp /home/geocom/data/pgh/cimjuk cimjuk_yolo_torch:/workspace/cimjuk
docker cp <복사할폴더(로컬)> <컨테이너:붙여넣을경로>

4) 필요 라이브러리 설치 & 실행 test

 

5) 컨테이너 이미지로 저장 (commit)

docker commit cimjuk_yolo pknu:cimjuk_yolo
docker commit <컨테이너명> <new이미지명:tag>

6) 이미지 저장

docker save -o /home/geocom/data/pgh/cimjuk/cimjuk_yolo.tar.gz pknu:cimjuk_yolo
docker save -o <파일명(로컬)> <이미지명:tag>

7) tar.gz 파일 load 후 작동하는지 test

docker load -i cimjuk_yolo.tar.gz

2. 도커 이미지 설치 후 실행

 

1) 도커 이미지 설치 (tar.gz 위치한 경로에서)

docker load -i cimjuk_yolo.tar.gz

2) run pytorch image (컨테이너 생성)

docker run --gpus all --shm-size=16g --name=cimjuk_yolo -ti pknu:cimjuk_yolo /bin/bash
docker run --gpus all --shm-size=<메모리> --name=<컨테이너이름> -ti <이미지:tag> /bin/bash

3) 소스코드 경로 접속

cd /workspace/cimjuk/code

4) 소스코드 실행

python test.py --task test --batch-size 16 --data data/cimjuk.yaml --weights cimjuk.pt --name cimjuk_test --save-txt --save-conf --verbose

기타 정리사항

1) 도커 이미지 & 컨테이너 확인

이미지: docker images

컨테이너: docker ps -a

 

2) 도커 이미지 & 컨테이너 삭제

이미지: docker rmi <이미지:tag>

컨테이너: docker rm <컨테이너명>

 

3) 컨테이너 실행

docker start <이름>

docker attach <이름>

 

4) 폴더 복사

로컬 → 도커

docker cp /home/geocom/data/pgh/cimjuk cimjuk_yolo_torch:/workspace/cimjuk

docker cp <복사할폴더> <컨테이너:붙여넣을경로>

 

5) 이미지 생성 및 tar.gz 파일로 저장

docker commit <컨테이너명> <new이미지명:tag>

docker save -o <파일명> <이미지명:tag>


* 참고

1. opencv-python 설치 시 발생하는 오류1

ImportError: libGL.so.1: cannot open shared object file: No such file or directory

 

해결법 :

apt-get update
apt-get -y install libgl1-mesa-glx

 

2. opencv-python 설치 시 발생하는 오류2

libgthread-2.0.so.0: cannot open shared object file

 

해결법 :

apt-get install libglib2.0-0

 

3. 넘파이 버전 에러

AttributeError: module 'numpy' has no attribute ‘int’

 

해결법:

pip install numpy==1.22.4 (환경 별로 버전 다를 수 있음)
LIST