본문 바로가기

회고록 모음/코드숨-스프링 과정 회고록

[회고록] 코드숨 Spring - 8주차 코드리뷰(REST Docs, Docker)

[ 8주차 회고록 📚]

 


📌 커리큘럼 


📌 코드리뷰 with 깃허브

github.com/CodeSoom/spring-week8-assignment-1/pull/8

 

[Spring 8주차 과제] API 문서 만들기, Docker image 만들기 by developerOlive · Pull Request #8 · CodeSoom/spring-wee

📍 과제 javaDoc 작성 API 문서 만들기 Docker image 만들기

github.com


1. 한 것

- 코드숨 스프링 8회 강의 3개 듣기 

 

- 과제 1 : Spring REST Doc을 이용한 API 문서 작성

 

- 과제 2 : Docker Image 배포


2. 배운 것

 

 







📌 도커란?

  • 컨테이너 기반의 오픈소스 가상화 플랫폼
  • 다양한 프로그램, 실행환경을 컨테이너로 추상화하고 동일한 인터페이스를 제공하여 프로그램의 배포 및 관리를 단순하게 해준다.
  • 백엔드 프로그램, 데이터베이스 서버 등 어떤 프로그램도 컨테이너로 추상화할 수 있고 조립 PC, AWS, Azure, Google cloud등 어디에서든 실행할 수 있다.

 

📌 컨테이너란?

  • Software를 실행하기 위해서는 OS와 Library를 포함, Software가 필요로 하는 파일 등으로 구성된 실행환경이 필요하다.
  • 만약 하나의 시스템 위에서 둘 이상의 Software를 동시에 실행하려고 한다면 문제가 발생할 수 있다.
  • ex) A와 B가 동일한 Library를 사용하지만 서로 다른 버전을 필요로 하는 경우 등 
  • 해결책 중 하나는 두 Software를 위한 시스템을 각각 준비하는 것이다.
  • 하지만 시스템을 각각 준비할 경우 비용의 문제가 발생하게 될 수 있다.
  • 이러한 문제점을 효율적으로 해결한 것이 바로 컨테이너이다.
  • 컨테이너는 개별 Software의 실행에 필요한 실행환경을 독립적으로 운용할 수 있도록 한다.
  • 다른 실행환경의 간섭을 막고 실행의 독립성을 확보해준다.

 

📌 이미지란?

  • 이미지는 컨테이너 실행에 필요한 파일과 설정값등을 포함하고 있는 것이다.
  • 상태값을 가지지 않고, 변하지 않는다.
  • 컨테이너는 이미지를 실행한 상태이고, 추가되거나 변하는 값은 컨테이너에 저장된다.
  • 같은 이미지에서 여러 개의 컨테이너를 생성할 수 있고 컨테이너의 상태가 바뀌거나 컨테이너가 삭제되더라도 이미지는 변하지 않고 그대로 남아있다.

 

📌 Dockerfile

  • 도커는 이미지를 만들기 위해 Dockerfile이라는 파일에 이미지 생성 과정을 적는다.

📌 도커 이미지를 만든 후 도커 허브에 업로드


3. 느낀 것

이번주는 개인적인 일정으로 인해 공부시간이 다른 주간보다 많이 없었다.

다음주부터 시작되는 프로젝트 배포를 하기 위해서 도커에 대해 잘 익히는게 중요할 것 같다.

도커가 좋은건 알겠는데.... '그래서 도커가 뭔데?' 라는 질문을 받았을 때 대답할 수 있도록 개념을 익혀야 할 것 같다.

 

벌써 프로젝트 준비라니... 머리속에 배웠던 개념들이 뒤죽박죽인 느낌이다.

분명 좋은 기술을 배웠는데, 온전히 내 것은 아니었음이 느껴진다.

프로젝트를 완성해 나가다보면 부족한 부분이 더 잘 보이게 될 것이고, 그 부족함을 보충하는 시간이 될 것 같다.

 


4. 자기 선언

docker를 활용해 어떻게 AWS 배포를 할 수 있을지 알아보자!