임시저장

heyme·2022년 11월 23일

alc test를 위한 docker 환경구성부터 실행까지 다 써보기로 했다. 다행히 매니저님이
이미지랑 컨테이너를 싹 날리셔서 처음부터 해볼 수 있는 환경이 구축되었다. 먼저,

docker hub에서 이미지를 다운받는다. centOS7은 이제 지원이 종료된다고 하여 rockylinux8을 사용할 예정이고 cuda는 버전11.4.3으로 사용하기로 하였다. 직접 다운받는 것이 아닌 pull 명령어를 사용하여 가져왔다. docker pull nvidia/cuda:11.3.1-cudnn8-devel-rockylinux8

이제 컨테이너를 만들어보자. 여러 옵션을 설정하여 컨테이너를 열어줘야 한다. 다음과 같은 명령어를 사용하였다.

docker run --runtime=nvidia --shm-size=1024m --storage-opt size=30G -e NVIDIA_VISIBLE_DEVICES=all -e NVIDIA_DRIVER_CAPABILITIES=all --net=host --env="DISPLAY" --volume="/root/.Xauthority:/root/.Xauthority:rw" -i -t -v /etc/localtime:/etc/localtime:ro -v /home/docker/share:/root/share --name=alc_heyme001 nvidia/cuda:11.4.3-cudnn8-devel-rockylinux8 /bin/bash
도커 과정은 아래 그림으로 보면 이해가 쉽다.

출처 https://0902.tistory.com/4

컨테이너를 생성했으니 환경설정을 해보자

먼저 기본적으로 python3과 pip3를 받는다.
yum이나 dnf를 사용하라는데 dnf가 yum 이후에 나온거라고 한다.
dnf -y install python38-devel
dnf -y install python3-pip

그리고 /root/.bash_profile에 alias를 해준다.
alias python='python3'
alias pip='pip3'

그리고 test해볼 modelscope에서 다운받으라는 것을 받았다.
pip install "modelscope[audio]" -f https://modelscope.oss-cn-beijing.aliyuncs.com/releases/repo

받는 중간에 뭐가 없어서 에러가 나고 멈추고를 반복한다.
python 버전이 안맞아서, cmake를 받아야 되는데 pip로 받았더니 또 안되서 dnf -y install로 받았더니 되고. 아직 이것저것 해보면서 되면 넘어가는 단계이다. 왜 이렇게 되는지는 아직 모르겠다..

python3.8.13 다운받고 변경하는법
먼저 3.8을 다운받는다 -> dnf module -y install python38
python3 -V (alias해둬서 python도 같음) -> python 3.6.8
alternatives --config python3 -> python3.8 선택
결과 : python3 -V -> python 3.8.13
아래는 위의 과정을 실행한 결과를 캡쳐하였다.

  • 그래도 실행중 에러가 발생하였는데, 이유를 찾아도 몰랐다. 나중에 매니저님도 같은 에러가 발생했고 소장님이 보고 scipy에서 에러가 났다는 것을 알려주셨고 버전을 맞췄더니 바로 실행이 되었다.

  • 오프라인에서 실행하였을때, 토큰을 주고받지 못하여 connection error 발생

  • 마지막으로 실행된 화면
    업로드중..

0개의 댓글