처음에는 SpringBoot의 Docker Image를 생성하고 내 세컨컴에서 Image를 pull 받아 springboot이미지의 개발환경 위에서 개발을 진행하려는 생각이었다. (즉, 가상환경이라고 생각하고 있었던것 같다...)
하지만, 이미지를 pull 받아 실행해보니.. 기존 소스코드를 바탕으로 돌아가는 것이었다.... (gradlew build를 해서 jar만든게 돌아가고 있었던 것...)
이걸 보고 혼란이 왔다... "docker가 개발환경을 설치해주는 것이 아니었나..? 나는 그래서 그 위에서 작업하려고 했는데.. 이러면 코드 수정을 못하는데...?"라고...
그래서 지인과 이 현상에 대해 토론을 했다. (지인이 나를 이해시켜주려 2시간동안 노력한건가,,,)
여튼 그래서 얻게 된 건 springboot를 docker이미지로 만들어 나올 때는 '코드 수정이 필요없는(유지보수,업데이트 제외) version N.N의 결과물'이라는 것이었다.
즉, 프로젝트의 결과물을 실행시키기 위한 환경이 세팅되어 있지 않은 곳에서 docker Image만 있으면 java와 같은 것들을 설치하지않아도 실행할 수 있도록 하는 것이 docker였던 것이다...
사실, 아주 정말 기초적이고 기본적이고 정말 근간이 되는 ......... 도커의 개념이지만 처음에 포인트를 잘못 잡으니까 머릿속에서 너무나도 꼬여버렸다. 다행히, 실습을 해보고 대화를 나누면서 깨닫게 되었다....!
이야기하면서 궁금해진 것이 '무중단 배포'에 관해서이다.
도커'도' 이용해서 무중단 배포가 가능하다던데 어떻게 하는 것일까...?
'CS 지식 > Docker' 카테고리의 다른 글
Docker (SpringBoot, MariaDB 연결) (0) | 2021.02.15 |
---|