DevOps(2)
-
[Meat-A-Eye 배포] GPU 다이어트
버지니아 리전에 말뚝을 박았다고 끝이 아니었다. 이제는 로컬에서 GPU(RTX)의 힘으로 쌩쌩 돌아가던 무거운 모델들을 CPU 2개뿐인 척박한 서버 환경에 맞춰 '다이어트' 시켜야 하는 더 큰 산이 기다리고 있었다.1. GPU에서 CPU로: requirements.txt 다이어트로컬에서는 당연하게 썼던 torch+cu118 같은 GPU 전용 라이브러리들이 서버에서는 독이 됐다. 수 GB에 달하는 용량은 서버를 숨 막히게 했고, GPU가 없는 환경이라 에러를 뱉어냈다.핵심 조치: requirements.txt에서 GPU 관련 태그를 싹 걷어내고 CPU 전용 버전으로 교체했다.코드 수정: .to('cuda')라고 박혀 있던 코드들을 device = torch.device("cuda" if torch.cuda..
2026.03.28 -
[Meat-A-Eye 배포] Docker를 활용한 배포 및 AWS 리전 트러블 슈팅
로컬 환경에서 고기 사진 올리고 "와, 잘 된다!" 하던 시절은 끝났다. 프로젝트가 마무리된 지 한참이 지난 어느 날, 우리는 결심했다. "그냥 로컬에서만 돌리기엔 너무 아깝잖아. 배포 한번 해보자." 이제는 '진짜 서버'라는 야생으로 나갈 시간. 하지만 배포의 시작부터 예상치 못한 복병들이 나를 기다리고 있었다.1. 깃허브(GitHub)의 재탄생: 배포를 위한 대청소프로젝트를 처음 진행하던 당시의 레포지토리는 그야말로 전쟁터였다. 실험적으로 돌려본 테스트 코드, 의미 없는 커밋 메시지들("수정", "다시", "진짜 마지막"), 개발 중에만 필요했던 임시 파일들, 그리고 무엇보다 용량을 잡아먹는 무거운 모델 가중치 파일들까지. 당시엔 신경 쓰지 못 하고 넘겼던 것들이 고스란히 쌓여 있었다.그런데 프로젝트..
2026.03.25