안녕하세요. 초보 개발자입니다.
도커를 이용해서 프로젝트를 구상해 봅시다.
도커를 이용해서 1. 웹서버, 2. 어플리케이션 서버, 3. DB, 4. jenkins/SVN (CI - 배포 툴)을 컨테이너로 띄우고 이들을 서로 연동하여 사용해 보려고 합니다.
어플리케이션은 bootstarp 및 스프링을 이용한 간단한 게시판을 하나 만들겠습니다.
1. 구조
- 웹서버 종류는 apache, nginx 등 많습니다. 아파치 먼저 도전해 봅시다.
- 어플리케이션 서버(WAS)는 tomcat, jboss 등 많습니다. 하지만 여기서는 톰캣을 기준으로 합니다.
- DB 서버는 maria db를 우선 구현하고 mongo 및 casandra db를 구현해 봅시다.
- CI 서버는 소스코드를 컴파일 하고 배포하는 역할을 합니다. 젠킨스를 사용하도록 하겠습니다.
2. 이 구조는 완벽한 걸까?
- 엄밀히 말하면 이 구조는 완벽하지 않습니다. 도커를 이용하면 서버를 손쉽고 빠르게 늘릴 수 있는데, 위 구조에서는 서버 확장(auto scaling - 오토스케일링 이라고 하죠 :) )이 제한적이기 때문 입니다. 하지만 위 구조를 완성하는 것도 의미가 있다고 보기에 해당 구조로 수행 후 오토스케일링이 가능하도록 도전해 보죠!
자, 그럼 설계 까지는 끝났습니다.
이제 하나하나 씩 구현해 봅시다!
'Container' 카테고리의 다른 글
AWS ECR Public 레파지토리 생성하기 (2) | 2020.12.11 |
---|---|
Github Container Registry 사용하기 (0) | 2020.12.07 |
도커허브 제한으로 대체재를 찾기 위한 삽질기 (0) | 2020.12.07 |
도커 시작하기 3 - Docker를 이용해 우분투 및 JDK8을 설치해 보자 (0) | 2018.04.01 |
도커 시작하기 1 - 개념 및 아키텍처 (0) | 2018.04.01 |