✔️Docker 13

[Docker] 도커의 기본 이해

도커란 한 마디로 정의하긴 어렵지만 컨테이너를 사용하여 응용프로그램을 더 쉽게 만들고, 배포하고, 실행할 수 있도록 설계된 도구. 즉, 컨테이너 기반의 오픈소스 가상화 플랫폼이며 생태계 핵심은 도커 이미지는 프로그램을 실행하는데 필요한 설정이나 종속성을 가지고 있으며, 도커 이미지를 이용해서 컨테이너를 생성하며, 도커 컨테이너를 이용하여 프로그램을 실행한다. 도커 사용의 흐름 도커 Client(CLI)에서 명령어를 입력하면 -> 도커 Server로 명령 요청이 가고, 처리된다. 예를 들어 docker run hello-world 명령어가 도커 Client에 입력이 되면 => 도커 Server는 이미지 Cache 보관 저장소에 해당 이미지가 있는지 찾아본다. 만약 캐시 보관 장소에 hello-world 이..

Dev/DevOps, Infra 2021.01.27

[Milestone 그 이후] Tensorflow Model Serving

1. SavedModel로 내보내기 학습시킨 모델을 tf.saved_model.save()함수로 SavedModel 포맷으로 내보낼 수 있다. 모델과 이름, 버전을 포함한 경로를 전달하면 이 함수는 이 경로에 모델의 계산 그래프와 학습결과 가중치를 저장한다. model_version = "0001" model_name = "medisharp_pill_image_model" model_path = os.path.join(model_name, model_version) tf.saved_model.save(model, model_path) 그러면 - saved_model.pb: 계산 그래프를 정의 - variables: 변수값을 담고있는 폴더로, 많은 개수의 가중치를 담은 모델의 경우 변수값이 여러개의 파일로..

[Milestone 그 이후] Docker 개념 잡기 및 Quick Start

학습시킨 딥러닝 모델을 docker를 활용한 tf서빙으로 배포하기 위해 docker에 대해 알아본 것을 정리하고자 한다. 1. Docker란 애플리케이션은 하드웨어, OS, 미들웨어 등 인프라 환경에 민감하게 반응할 때가 많다. 특히 개발 환경과 테스트 환경에서는 동작을 잘 하다가 제품 환경에서는 동작하지 않는 경우도 있다. (실제 첫번째 프로젝트때 배포때문에 너무 많은 고생을 했다. 로컬환경에서는 되는데 왜 배포환경에서는 이런 저런 에러가 발생하지?! 싶은 일들..) 도커는 이미지를 이용해, 어느 환경에서든 '이미지'안에 적힌 내용을 그대로 실행시킬 수 있다.이미지' 안에 서버 세팅에 대한 모든것을 적어놓고, 그 이미지를 실행시키면 어딜 가던 '이미지' 안에 적힌 서버셋팅 환경을 도커가 만들어준다. 이..