기존에 Flask 로 모델 배포를 하고 있었는데,
효율화를 위해 Docker 와 TorchServe 를 사용하여 모델 배포를 할 예정
각각 설정해야 할 것도 많고 기존에 gunicorn 과 엮어서 서빙했기 때문에
차근차근 단계별로 진행할 예정이다.
Ubuntu 22.04 도커 설치하기
공식문서는 여기
0. OS requirements (05월 22일)
- Ubuntu Lunar 23.04
- Ubuntu Kinetic 22.10
- Ubuntu Jammy 22.04 (LTS)
- Ubuntu Focal 20.04 (LTS)
- Ubuntu Bionic 18.04 (LTS)
compatible 한 버전의 우분투를 사용 중인지 확인
도커를 설치할 수 있는 방법은 여러가지가 있지만, 여기선 apt repository 로 설치
1. repository 설정
1-1. apt package index 업데이트하고 HTTPS를 통해 repository 를 사용할 수 있는 패키지 설치
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
1-2. Docker의 official GPG key 추가
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
1-3. 아래 명령어를 통해 repository 설정
echo \
"deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
"$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
2. Docker Engine 설치
2-1. apt package index 업데이트
sudo apt-get update
2-2. 가장 최신 버전의 Docker Engine 과 Docker Compose 설치
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
만약 원하는 버전이 별도로 있다면
설치 가능한 버전을 확인하고
# List the available versions:
apt-cache madison docker-ce | awk '{ print $3 }'
5:24.0.0-1~ubuntu.22.04~jammy
5:23.0.6-1~ubuntu.22.04~jammy
<...>
원하는 버전을 설정하여 설치하면 된다
VERSION_STRING=5:24.0.0-1~ubuntu.22.04~jammy
sudo apt-get install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin
3. 설치확인
hello-world 이미지를 실행시켜 제대로 설치되었는지 확인
sudo docker run hello-world
위 명령어를 실행시키면 테스트 이미지를 다운받고 실행시켜준다

이런 메세지가 나오면 설치 끝!
번외로 매번 docker 명령어를 입력할 때 마다 sudo 를 붙이는게 번거롭기 때문에
한 번 설정해두면 편리하게 사용할 수 있다.
1. 도커 그룹생성
sudo groupadd docker
2. 도커 그룹에 유저 추가
sudo usermod -aG docker ${USER}
3. 도커 재시작
sudo service docker restart
4. 현재 사용자 로그아웃 및 재로그인
# 루트 사용자로 변경
sudo su -
# 기존 사용자로 변경
su - ${USER}
5. 확인
docker ps
permission denied 어쩌구 저쩌구 하는 에러메세지 안나오면 성공!
끝
'Dev' 카테고리의 다른 글
[Linux] Nvidia-Docker 설치하기 - 도커에서 TorchServe 모델 배포 (3) (0) | 2023.05.31 |
---|---|
[Linux] MAR 파일 생성하기 - 도커에서 TorchServe 모델 배포 (2) (0) | 2023.05.31 |
[Linux] Ubuntu 22.04 원격 리눅스 서버에서 파일 또는 폴더 가져오기 (0) | 2023.05.10 |
[Linux] Ubuntu 22.04 디렉토리 이름 변경하기 (0) | 2023.05.08 |
[Linux] Ubuntu 22.04 RTX 4090 RuntimeError: cuFFT error 해결 (0) | 2023.04.25 |