[BentoML] 오픈소스 기여를 해보다.

0

프로젝트에서 모델 서빙 프레임워크로 BentoML을 사용하고 있고, boto3를 사용해서 AWS S3에 객체를 업로드 하고자 했다.

프라이빗 버킷에 접근하기 위해서 AWS credentials을 Bento에 전달해야 했고, 아래와 같이 BentoML에 나와있는 방식으로 코드를 작성했지만,

도커 컨테이너를 실행할 때 아래와 같은 에러가 발생했다.

"botocore.exceptions.NoCredentialsError: Unable to locate credentials"

이를 해결하고자, BentoML 공식 Slack에 들어가서 여러 개발자분과 질의응답 시간을 가졌지만 쉽게 해결되지 않았다.. 물론 엄청 친절하게 같이 에러를 해결하기 위해 도와주셨다.

며칠동안 구글링을 한 끝에, Dockerfile.template을 아래와 같이 수정함으로써 문제를 해결할 수 있었고 이를 Slack에 공유하여 컨트리뷰션 제의를 받게 되었다.
도커 이미지 빌드 시에 ARG 명령어 뿐만 아니라 ENV 명령어를 같이 써줘야 AWS Credentials가 제대로 적용되는 걸 확인할 수 있었다.

포기하지 않고, 에러를 해결했을 뿐인데 오픈소스에 기여해보는 경험을 할 수 있어서 굉장히 기쁘고 설렜다.

나의 PR 링크 ➡️ https://github.com/bentoml/BentoML/pull/3125

PR이 머지된 이후에 BentoML 공식 문서가 아래와 같이 수정되었다.


혹시 프로젝트에서 모델 서빙 프레임워크로 BentoML을 사용하는데 에러가 발생했다면 공식 Slack을 이용하기를 추천한다. 구글링 해도 나와있지 않은 에러들에 대해 Slack에는 해결책이 올라와있는 경우가 많고, 굉장히 활성화 되어있어 많은 개발자 분들이 친절하게 답변해주시기 때문이다.
BentoML Slack 참여하기

profile
재미있는 아이디어 떠올리는 것을 좋아하고, 이를 구현하여 세상에 즐거움을 선물하고 싶은 사람입니다.

2개의 댓글

comment-user-thumbnail
2022년 12월 5일

안녕하세요 글 잘 봤습니다. 슬랙에 남기신 댓글도 봤는데요, 결국 credential 문제는 위의 내용으로 해결하신건가요?
ENV로 키값을 넣었는데도 동일한 문제라서, 슬랙 댓글에 있는 docker run -v로 해결하신건지 궁금합니다.

1개의 답글