유누킴

Docker + DockerHub(Automated Build) + Bitbucket 사용하기 본문

Tech/Others

Docker + DockerHub(Automated Build) + Bitbucket 사용하기

Yunhoo_kim 2018. 3. 27. 14:10
728x90

Docker + DockerHub + Bitbucket 사용하기

이번 글에서는 DockerHub의 automated build 기능을 사용하여 Docker 이미지를 생성하는 방법에 대해서 설명 드리겠습니다. 이번 글에서는 Docker의 대한 설명은 따로 진행하지 않겠습니다. 기본 지식을 바탕으로 진행됩니다.

DockerHub

DockerHub란 개발자들이 흔히 쓰는 Github와 비슷하다고 생각하면 된다. Github는 코드 버전관리 시스템인 git을 공유하고 업로드 가능한 오픈 서비스입니다. DockerHub는 Docker Image 파일을 업로드 할 수 있도록 제공하는 서비스입니다. Private repository를 제공하기 때문에, 서비스를 운영하는 입장에서도 안전하게 무료로 사용가능해서 애용하고 있습니다. DockerHub는 Dockerfile과 소스코드 관리 시스템과 연동하여 Docker 이미지를 자동으로 빌드업 할 수 있는 automated build 기능을 제공하므로 도커를 이용해서 다중서버를 구성하는 환경에서는 무엇보다 좋은 서비스입니다. 소스코드 관리 시스템인 Bitbucket과 연동하여 사용하였습니다. github와 달리 bitbucket은 UI도 깔끔하고 무료 private repository를 제공하므로 Bitbucket과 연동하여 automated Build를 사용하는 방법을 알려드립니다!

DockerHub와 Bitbucket 연동하기



Dockerhub 왼쪽 위 Create을 선택하고 Create Authomated Build를 선택한다.



연동할 소스코드 관리 서비스를 선택한다.



소스코드 관리 시스템에서 연동할 프로젝트를 선택한다.



Description과 visibility를 설정한다. public인 경우 모든 사용자가 접근 가능하므로 이미지의 보안에 중요한 코드가 삽입되어 있을 경우 꼭 private으로 설정해야한다.







생성 이후 Automated Build Repository의 Build settings 안에 어떤 브랜치를 Automated Build에 사용할 지 선택할 수 있다.




Dockerhub Automated Build는 프로젝트 최상위 폴더내에 있는 Dockerfile을 이용해서 해당 소스코드를 Docker Image로 생성한다.

master branch 안에 Dockerfile을 생성하고 push를 하면 자동으로 Dockerfile을 빌드해서 이미지를 생성한다.




해당 브랜치로 Push를 하게되면 자동으로 빌드가 시작된다. 

만약 에러가 나게되면 에러 로그를 볼 수 있고, 빌드가 성공되면 컨테이너로 바로 실행가능한 이미지 파일이 생성된다.



해당 포스팅은 실제로 환경을 구축하며 작성하였습니다.

문의나 지적사항이 있으면 언제든 환영합니다!