Docker build fail to install insightface...
프론트엔드 개발 중, 간단한 AI 모델을 올려서 테스트용으로 Python Fastapi 서버를 구현하였는데, 매번 서버를 켜기 귀찮아서 Docker라고 하는 서버 빌드, 배포 기능을 제공하는 편리한 툴을 사용해보았다.
Docker Image를 빌드하는 중 발생한 문제를 해결한 내용이다.
문제
- DockerFile을 작성하여 image build하는 중 insightface 패키지 설치를 실패하여 image build를 할 수 없는 상황
- Windows OS 환경에서는 microsoft c++ build sdk 설치를 통해 문제 해결하였지만, docker build는 ubuntu os 환경이여서 다른 방법으로 해결 필요
해결 방법
Dockerfile 안에 아래 패키지 설치 명령어
RUN pip install --no-cache-dir insightface==0.7.3
앞에 insightface 빌드에 필요한 라이브러리 설치 구문을 추가하여 해결하였음.
RUN apt-get update && apt-get install -y \\
libgl1-mesa-glx \\
libglib2.0-0 \\
build-essential \\
cmake \\
python3-dev \\
libopenblas-dev \\
liblapack-dev \\
libjpeg-dev \\
zlib1g-dev \\
git \\
&& rm -rf /var/lib/apt/lists/*
RUN pip install --no-cache-dir insightface==0.7.3
정리
원인 : insightface 패키지를 install할때에는 빌드 툴이 필요하다.
해결방법 : linux 환경에서 빌드에 필요한 라이브러리를 추가하였다.
'S급 프론트엔드 개발자로 회귀하다' 카테고리의 다른 글
S급 프론트엔드 개발자로 회귀하다 007화. Blocked aria-hidden on a <button> element 에러 해결 (포커싱 에러) (0) | 2024.08.01 |
---|---|
S급 프론트엔드 개발자로 회귀하다 006화. 너의 모든 순간, 날짜 데이터를 관리해줄게 - moment.js (0) | 2024.07.11 |
S급 프론트엔드 개발자로 회귀하다 005화. Material-UI 사용기 - 레이아웃 미세 조정이 힘들면 개발자 도구로 (0) | 2024.07.08 |
S급 프론트엔드 개발자로 회귀하다 004화. List 구현하기 - 스크롤링을 하면 스크롤바가 덜덜 떨리네 (0) | 2024.07.08 |
S급 프론트엔드 개발자로 회귀하다 003화. 나는 리엑트의 새로운 페이지가 필요해 (0) | 2024.05.16 |