Cloud Native Spring in Action 18

임베디드 서버로 작업

94p 루트 폴더로 이동하여 애플리케이션을 JAR파일로 패키징(다시 한번 말하지만, 제발 띄어쓰기가 없는 폴더로...고통....)./gradlew bootJar bootJar 작업은 코드를 컴파일하고, 애플리케이션을 JAR파일로 패키징 함.이때 JAR는 build/libs 폴더로 생성되게 기본 설정 되어있음. java -jar build/libs/catalog-service-0.0.1-SNAPSHOT.jar 명령을 통해 실행.(bootJar와 test작업을 하나로 결합한 build를 사용해도 됨)  ctrl c 를 눌러 애플리케이션 중지 3.2.3 내장 톰캣 설정(98p)application.properties파일을 application.yml 로 변경하고해당 yml파일에 HTTP 포트, 연결 타임아웃,..

쿠버네티스로 컨테이너 관리

2.4 쿠버네티스로 컨테이너 관리 (68p) 컨테이너 구성에는 컨테이너 런타임이 있는 컴퓨터 필요.쿠버네티스를 사용하면 오케스트레이션 구성이기 때문에 클러스터 필요. ※클러스터 Cluster컨테이너화된 애플리케이션을 실행하는 작업자 머신(노드 node)의 집합. 모든 클러스터에서는 적어도 하나의 작업자 노드가 존재.미니큐브 사용시 로컬 머신에서 쉽게 단일 노드 클러스터 생성 가능. → 프로덕션, 즉 실제 서비스 환경에서는 클라우드 공급자가 관리하는 클러스터 사용. ※작업자 노드 worker node쿠버네티스 클러스터에는 작업자노드라는 머신이 여러 대 존재할 수 있는데, 이 작업자 노드에 컨테이너화된 애플리케이션이 배포됨. 컨테이너가 실행하고 네트워크에 연결할 수 있도록 작업자 노드는 CPU, 메모리, 네..

컨테이너를 통한 스프링 애플리케이션의 실행

루트폴더인 catalog-service로 이동하여 ./gradlew bootBuildImage 명령어 입력.이 그래들 작업은 내부적으로 클라우드 네이티브 빌드팩을 이용해 애플리케이션을 컨테이너 이미지로 패키징 한다.PS C:\Y\Cloud Native Spring in Action> cd C:\Y\"Cloud Native Spring in Action"\catalog-servicePS C:\Y\Cloud Native Spring in Action\catalog-service> ./gradlew bootBuildImageStarting a Gradle Daemon (subsequent builds will be faster)> Task :bootBuildImageBuilding image 'docker.i..

도커, 쿠버네티스 설치

A.2 도커 (703p) https://app.docker.com/위의 사이트에서 도커 다운로드  다운완료 후 exe 실행시켜 설치.설치 완료시 재시작해야 적용됨.(완료단계에서 restart할지 물어봄)윈도우 시작 후 도커를 실행시켜 로그인까지하면 이런식으로 화면이 보임(처음 구동시 시간 필요)우측 하단 터미널 표시 >_를 눌러서 터미널 실행. 다른 쉘에서 진행하는 경우에는 docker login 하고 본인 아이디랑 비밀번호를 입력해야하는 것으로 아는데,나는 이미 도커 데스크탑앱에서 로그인이 된 상태라 명령어를 작성하면 바로 연결된 계정으로 로그인 됨. 제대로 설치되었는지 예제 이미지 하나 설치.docker pull ubuntu:22.04  A3. 쿠버네티스 (705p)https://minikube.si..

컨트롤러 구현, 애플리케이션 테스트, 실행

4. 컨트롤러 구현 (58p)package com.polarbookshop.catalogservice;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RestController;@RestControllerpublic class HomeController { @GetMapping("/") // 루트 엔드포인트로 GET요청 처리 public String getGreeting() { return "Welcome to polarbookshop's catalog service!"; }} 5. 애플리케이션 테스트 (60p) package com.po..

프로젝트 초기화, git 연결

1. 프로젝트 초기화 (53p) TO DO LIST1. catalog-service라는 이름의 깃 저장소를 생성2-1. 스프링 이니셜라이저에서 스프링부트 프로젝트 생성2-2. 생성된 코드를 방금 만든 catalog-service 저장소에 저장 *그래들 프로젝트 관련 메모: 저자는 그래들-그루비와 그래들-코틀린 중 그래들-그루비로 진행했다. 나도 동일하게 진행. >> 뻘짓구간 시작이 단락을 보기전에 아래 스프링 이니셜라이저에 대한 얘기가있으니 먼저 조금 내려가서 보길. 여긴 내가 뻘짓한 구간ㅋㅋ....ㅎ............(훌찌락)  흠... 교재의 저자화면과는 다르게 나는 Spring boot를 바로 설정할 수가 없네, 인텔리제이에 안익숙해서 못찾는건가 ㅎㅎ..!암튼 그래서 그냥 저대로 만들고 스프링부..

개발 환경 설정, sdkman 설치 + OpenJDK17 설치

A.1 자바 (701p) 후기: 이게 여러 글로 나눠갈게 아니었는데.... 어쩌다 이런 먼길을 가게되었을까.... 해당 도서에서는 OpenJDK17을 사용하는데, 내 노트북엔 새로 깔아줘야 해서 처음 설치단계부터 진행했다. 진행하면서 기록남기려고 간만에 티스토리에 두둥장!(대충 두두둥!등장!이란 뜻)  기존 JDK를 지우면 무슨 일이 벌어질지 모르기 때문에 책에서 추천한대로 sdkman도구를 이용하여 다른 JDK설치 및 업데이트를 관리하기로 결정했다.  sdkman은 CLI 명령을 통해 쉽게 JDK 설치, 변경, 환경변수 변경을 도와주는 프로그램이라고 한다. 이번에 처음 써보는데 찾아보니 유닉스 기반 프로그램이라 윈도우에서는 조금 설치가 번잡한듯.(킹치만 난 윈도우인데)  window 운영체제에서도 리눅..

Intro.

트위터 개발자스럽다(@gaeraecom) 도서 증정 이벤트 당첨되서 받은 『클라우드 네이티브 스프링 인 액션』.학기중이라 미루고, 야구시즌이라 미루다 보니 이제야 열어보게 되었다. 지은이는 덴마크의 소프트웨어 엔지니어인 토마스 비탈레이고, 미국에서 백엔드 테크리드로 일하고 계신 차건희씨가 옮겼다. 개인적으로 앞에 차건희씨의 머리말이 맘에 든다. 최근 몇 년 사이에 클라우드, 도커, 쿠버네티스, 데브옵스, CI/CD, 파이프라인 등에 대한 관심과 수요가 많이 늘었는데, 보안이 중요한 금융에서 쭉 개발을 해오다보니 이런 기술을 접할 일이 없었다. 그러나 구인구직 사이트만 들어가봐도 이제는 이러한 기술에 대한 지식이나 경험이 없으면 지원할 수 있는 회사의 수가 몇 안될 정도로 관심이 뜨겁다. 회사에서 안쓴다고..