오픈 소스 컨트리뷰션 개발환경

Dong Wook Lee (Michael)·2020년 12월 29일
0

오픈소스 컨트리뷰션 개발 환경 구축의 문제점

오픈소스 컨트리뷰션을 할 때, 힘들고 귀찮은 것 중에 하나가, 바로 개발 환경 셋팅인 것 같다.
개발 환경을 셋팅하는 것은 시간도 오래 잡아 먹을 뿐만 아니라, 새로운 환경에서 급하게 작업을 해야하거나 짬을 내서 작업할 때, 개발 환경을 셋팅하기란 배보다 배꼽이 큰 상황이 벌어질 것이다.
따라서 이를 간편하게 하기 위한 목적으로 어디서나 접속하고 개발 환경을 유지하기 위해서 AWS나 GCP 같은 클라우드 서비스를 이용하여, 개발 환경을 구축하고 로컬에서 접속하거나, 집에 서버 컴퓨터를 구축하고 포트포워딩을 통하여 항상 개발 가능한 상태로 만들어 놓는 것을 생각해본적이 있다.
하지만, 이 역시 비용이 발생하며 신경 쓰이는 것도 생각보다 많다.따라서 내가 내린 결론은 도커를 활용하여 개발환경을 세팅하는 것이다.

도커를 이용한 개발 환경 구축의 장점

우선 도커를 통한 개발 환경 구축의 장점을 설명해보겠다.
내가 생각하는 도커를 이용하였을 때, 가장 큰 장점은 도커를 이미지 파일화 시켜서, 어떤 환경에서든 도커만 동작할 수 있으면 원하는 환경에서 개발을 시작할 수 있다.
그리고 이미지 파일은 도커 허브를 이용하여, 저장소에 업로드를 할 수 있으며 다른 환경에서도 언제든지 도커 이미지만 다운로드 받으면, 개발을 할 수 있다는 것이다.
그리고 이미지 파일을 업로드 하고 공유할 수 있어서 간편하게 개발을 할 수 있다.

docker search arcus

Arcus 라는 오픈 소스 프로젝트를 개발하려고 마음을 먹었을 때, 도커 허브에서 검색을 하면, 다른 사람들이 이미 올려놓은 이미지 파일을 다운로드 받을 수 있다는 것을 알 수 있다. 심지어는 오픈소스 프로젝트를 운영하는 곳에서도 올려놓은 것을 확인할 수 있어서 이를 유용하게 사용할 수 있다.

주의 사항

도커의 이미지를 실행하면 컨테이너가 생성된다. 따라서 컨테이너에 변경사항이 생기면 이미지가 변경되는 것이 아니라 컨테이너가 변경되게 된다.
따라서, 컨테이너가 종료되면 변경사항은 모두 사라진게 된다. 만약 변경 사항을 이미지에 저장하고 싶다면 다음과 같은 명령어를 입력한다.

docker ps

위의 명령어를 통해서 도커 이미지에 대응하는 컨테이너의 아이디 값을 알아낼 수 있다. 위의 그림의 경우에는 80b4f54da80c 이다.

sudo docker commit {CONTAINER_ID} {IMAGE_NAME}

와 같이 입력을 하게 되면, 변경된 컨테이너가 이미지로 저장된다.
이제 이미지를 실행하면, 이 이미지에는 변경된 사항이 남아있는 것을 확인할 수 있다.

도커 이미지 도커 허브에 업로드 하기

개발 환경을 셋팅하였다면, 이제 이미지를 업로드 할 차례이다.

다음과 같이 스냅샷이 잘 이루어진 것을 확인한 후에, IMAGE_ID를 기반으로 tag를 만들어주게 된다.
그리고 나서, 최종적으로 업로드를 하면 된다.

profile
오픈소스 메인테이너를 꿈꾸는 개발자!

0개의 댓글