블록체인
블록체인

서비스 빌드 및 배포

서비스 빌드 및 배포

Docker에서 제시하는 개발-배포 Flow

1.
초기 구축
코드가 배포될 클라우드의 인프라를 구축하는 일
1 단계 ) Swarm(Docker Machine Cluster)를 구축
2단계) docker-compose.yml로 Stack 구성 및 실행
2.
스케일 조정
docker 로드밸런싱 : 2가지 방식
1) Cluster의 worker node를 추가하여 부하분산
2) Service의 Task Container 수(Replicas:5)를 늘림으로서 부하분산
Swarm Cluster 로드밸런싱
각 노드에 존재하는 swarm loadbalancer가 하나의 docker 실행 환경처럼 작동해서 필요한 적절한 컨테이너로 연결
3.
코드 배포
소스코드 수정 후 docker image build
Docker Hub Repository에 새로 만든 이미지 push
docker-compose.yml파일 또는 swarm에 bind-mount 파일 변경되었다면 docker-machine scp로 전송
docker-machine ssh myvm1 “docker stack deploy-c ./docker-compose.yml”로 Stack 재배포하면 Repository에서 이미지 새로 끌어와서 업데이트된 컨테이너가 구축

Jenkins

젠킨스와 연계하여 테스트를 자동화할 수 있음