🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [78]일차🚀78일차에는 빌드 자동화 도구 Jenkins와 Github Actions에 대해 모두 학습해볼 수 있었다.학습 목표 : Jenkins로 자동 빌드 테스트 및 Github Actions로 프로젝트를 빌드할 수 있는 것학습 과정 : 회고를 통해 작성❓AWS를 사용하는 이유➡️개발한 애플리케이션이 본인(로컬)만 보는 것이 아닌 다른 사람에게도 보여지도록 하기위함➡️관리비용을 지불하여 네트워크에 대신 서버를 구축해서 빌려주는 클라우드 시스템이므로 사용Build Trigger트리거 설정은 "언제 빌드를 시작할 것인가"를 정의Build after other projects are built ➡️다른 프로젝트(혹은 Job)가 빌드에 성공(혹은..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [77]일차🚀77일차에는 빌드 자동화를 다루는 Jenkins와 Github Actions 등에 대한 개념을 학습할 수 있었다.학습 목표 : 빌드 자동화 도구 중 Jenkins에 프로젝트를 연결하여 설정을 구성해볼 수 있다.학습 과정 : 회고를 통해 작성쿠버네티스 애플리케이션 배포단순히 컨테이너를 생성하는 것보다 배포 전략을 잘 알아야함 배포 전략확장성 : 트래픽 증가에 따라 Pod 개수 늘리기고가용성 : 하나의 Pod이 죽어도 서비스 중단을 최소화하기 위해 Deployment와 Service를 통한 로드밸런싱다수의 Pod을 여러 노드에 분산시켜 장애에 대한 내성 확보무중단 업데이트 (Rolling Update) : 신규버전 배포 시 서비스를 ..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [76]일차🚀76일차에는 도커와 쿠버네티스에 대해 더 자세히 학습할 수 있었다.학습 목표 : 쿠버네티스로 포트포워딩이나 PV, PVC 등을 배워 활용할 수 있어야함학습 과정 : 회고를 통해 작성 커스텀 deployment 만들기 kubectl create deployment juunb --image=nginx➡️기본으로 deployment가 하나 만들어지면 pods도 하나 만들어진다.deployment로 인해서 pods 생성되고, deployment를 생성했을때 사용했던 이미지로 ,컨테이너가 새로 생성되는것kubectl delete pods [pod ID]pods를 삭제해도, deployment에서는 pods를 가지고 있어야하기에 다시 바로 ..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [75]일차🚀75일차에는 도커 컨테이너의 모니터링 관리 도구인 프로메테우스와 그라파나에 대해 배울 수 있었다.학습 목표 : 프로메테우스와 그라파나 모두 컨테이너로 실행하여 프로젝트의 요청에 대해 변화하는 것을 모니터링 가능학습 과정 : 회고를 통해 작성프로메테우스 / 그라파나 모니터링Spring Boot Actuator애플리케이션의 상태 (Health, Metrics, Info 등)를 확인하고 관리할 수 있도록 도와주는 강력한 모니터링 관리 도구Spring Boot를 사용하면 간단한 설정만으로 다양한 Actuator endpoint를 사용하고 커스터마이징 가능 프로메테우스ex. 매 5초마다 웹 서버 컨테이너의 CPU 사용률은 15%", "데..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [74]일차🚀74일차에는 Docker의 로드밸런싱을 이용하여 각 컨테이너 별 순차처리에 대해서 학습할 수 있었다.학습 목표 : docker-compose.yml 설정이나 nginx를 통해 컨테이너 별로 서버를 열어 관리할 수 있도록 해야함학습 과정 : 회고를 통해 작성웹서버와 웹어플리케이션서버➡️웹서버 = 정적 페이지 처리 ➡️WAS = 동적 페이지 처리주요 역할정적 페이지(HTML, CSS, JS) 제공동적 페이지(데이터 처리, 비즈니스 로직 실행) 제공처리 방식클라이언트 요청 → 정적 리소스 반환클라이언트 요청 → 애플리케이션 로직 처리 → 동적 응답 생성예시Apache HTTP Server, NginxTomcat, JBoss, WebLo..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [73]일차🚀73일차에는 Docker로 사용자 정의 이미지를 만들어 Docker hub로 공유하는 것도 학습해볼 수 있었다.학습 목표 : 샘플 프로젝트를 통해 이미지로 태그(버전)관리를 해보고 별도의 이미지를 만들어낼 수 있다.학습 과정 : 회고를 통해 작성❓EC2 vs S3➡️아마존 웹 서비스(AWS)와 관련된 개념1. EC2 (Elastic Compute Cloud)AWS에서 제공하는 가상 서버 서비스EC2는 물리적인 서버대신 클라우드에서 가상 머신(VM)을 실행할 수 있는 서비스ex. 도커 컨테이너를 실행하려면 호스트 머신(서버)이 필요한데 EC2는 클라우드에서 가상 서버를 제공하므로여기에 Docker를 설치하고 컨테이너를 실행할 수 가..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [72]일차🚀72일차에는 Docker로 설정파일을 담은 이미지를 직접 만들어 네트워크의 컨테이너 간 통신을 테스트해볼 수 있었다.학습 목표 : 네트워크 핑 테스트와 컨테이너에 올릴 설정파일 작성 연습학습 과정 : 회고를 통해 작성컨테이너 이미지 만들기필요한 애플리케이션들을 컨테이너에 매번 설치해서 직접실행할 필요없이프로젝트마다 다른 개발환경에 따라 이미지화시켜서 적용하면 개발환경에 맞게 활용 가능private 리포지토리를 가져올때https://아이디:토큰@깃허브저장소주소설정파일에 직접 넣어 이미지를 만들지 않고 환경변수에서 가져다 쓰도록 설정할 것Dockerfile# 1. JDK 21을 포함한 OpenJDK 기반 이미지 사용FROM eclip..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [71]일차🚀71일차에는 도커와 리눅스를 이용하여 함수, 반복문 등을 실습해보고 기존 Spring 프로젝트와 연동해볼 수 있었다.학습 목표 : 스크립트 파일로 함수, 반복문, 계산기 프로그램 등을 구현가능해야함학습 과정 : 회고를 통해 작성$(명령어)ex. $(whoami)#!/bin/bash# example.sh: simple script exampleecho "Hello, $(whoami)! This is example.sh."CURRENT_TIME=$(date +"%Y-%m-%d %H:%M:%S")echo "current time: $CURRENT_TIME"$CURRENT_TIME : $변수 의 구조이면 이 변수를 출력해줌을 의미$(wh..
🦁멋쟁이사자처럼 백엔드 부트캠프 13기 🦁TIL 회고 - [70]일차🚀70일차에는 도커를 이용해서 리눅스 명령어를 더 실습해볼 수 있었다.학습 목표 : 권한부여 및 네트워크 명령, 검색 기능 등을 리눅스 명령어로 학습할 수 있음학습 과정 : 회고를 통해 작성Dockerfile - 필요 패키지 설정매 docker-compose 마다 which, git 등의 패키지를 설치하지 않아도Dockerfile 에서 기본설정으로 필요패키지가 설치된채 가상환경이 실행되게 설정 가능 RUN yum install -y [필요패키지] 를 넣어주면된다.적용후에는 down을 시킨 후 docker-compose up -d --build --force-recreate새로운 설정들을 반영해서 다시 실행기초설정에서 패키지들을 정의..