텐서플로우 도커 환경을 사용해야 하는데 GPU가 없다면?
·
Dev/Trouble Shooting
요약 GPU 를 통해서 학습을 시켜 모델링을 완료하여 모델 파일로 변환한 후, 그 모델을 API 서버로 만들어서 졸업 작품에 적용하려고 하였습니다. 문제는 졸업 작품에 환경이 Azure 클라우드 서비스를 기반으로 한 Kubernetes Cluster 환경이라는 것입니다. 단순히 로컬에서 동작하는 것이라면 호스트 OS의 GPU를 사용하면 됐지만, AKS(Azure Kubernetes Service)의 GPU 기능을 사용하자니 비용적으로 문제가 발생하였습니다. 이에, 데모 제품인만큼 “Tensorflow를 GPU가 아닌 CPU로 돌리면 어떨까?” 라는 생각이 들어 tensorflow-cpu 로 변경하여 해결하였습니다. 오류 문구는 다음과 같습니다. 2022-11-17 00:56:11.728793: W ten..
Docker-Compose를 활용한 NestJS Dockerized (Mac M1)
·
Dev/Docker
요약 Mac M1 환경에서 Docker Compose 를 이용하여 NestJS 개발 환경을 도커 컨테이너로 실행합니다. docker-compose.yaml 파일 생성 version 는 docker compose의 버전을 의미합니다. services 는 해당 docker compose 사용될 docker service를 정의하는 영역을 의미합니다. api 는 docker service의 이름을 정의합니다. build 해당 서비스를 Container로 빌드할 때 필요한 옵션들을 정의합니다. dockerfile 해당 서비스를 빌드할 때 Dockerfile를 참고합니다. 이때, 해당 Dockerfile에 대한 경로를 정의합니다. context 는 docker build 명령을 실행할 경로를 뜻합니다. ports..
Docker Build 시 Node Alpine 버전에서 bcrypt 오류
·
Dev/Trouble Shooting
요약 개발한 NestJS 애플리케이션을 Docker Container Build 하자 bcrypt 설치 오류가 발생하였습니다. bcrypt 대신 bcryptjs 로 대체하여 사용하였습니다. Node 이미지를 Alpine으로 사용하고 있어서 발생한 문제입니다. 기본 Node 이미지를 사용하면 개선이 가능하지만, 도커 이미지 용량 또한 증가하기 때문에 bcryptjs로 대체하였습니다. 해결 bcrypt 패키지에 종속된 코드들을 모두 bcryptjs로 수정해야 합니다. npm uninstall bcrypt @types/bcrypt npm i bcryptjs @types/bcrpytjs Reference https://github.com/kelektiv/node.bcrypt.js/issues/595