본문 바로가기

전체 글64

[ Jenkins ] Jenkins CI/CD 무엇인가? 1. 글을 작성하는 이유 안녕하세요. 이번에는 Jenkins를 학습한 내용을 정리를 하려고 합니다. 사실 Jenkins를 학습한 이유는 신입으로 취업을 하기 위해 우대사항을 보면 Jenkins CI/CD 파이프라인 우대가 있어서 관심을 가지게 되었습니다. 일단 Jenkins에 대해 학습을 하면서 궁금한 사항이 있었습니다. 시장에는 CI/CD툴이 많습니다. 예를 들어 Travis이 있습니다. Travis는 호스팅된 서비스로 클라우드 플랫폼에서 제공합니다. 그래서 개발자가 설정 및 설치가 Jenkins에 비해서 더 편합니다. 그런데 왜 시장에서는 Jenkins 우대사항이 많은지 궁금했습니다. 2. Travis / Jenkins 일단 호스팅된 서비스와 직접 개발자가 설치 및 관리를 하는 Travis와 Jenk.. 2023. 4. 15.
[ 웹개발 배포 챌린지 ] 23.04.08 - week2 1. 이번 주 스터디에서 학습한 내용 1주차에 학습한 내용을 복습을 하고 Docker와 AWS EC2를 학습을 하였습니다. 이번에는 Jar통하여 Local로 실행을 하고 Plain.jar에 대해서 학습을 하였습니다. 추가적으로 docker를 통하여 빌드하여 jar 파일을 실행하는 방식을 사용하여 배포에 대한 기본적인 내용을 학습을 하였습니다. 2. 과제 1) SCP 명령어 실습 - 추후 내용 보강 후 알려드림 2) jenkins 내 publish-over-ssh 수동설치 후 private&pulbic key 설정등록하기 3) worker-instance 에 docker run 실행 시키기 GitHub - mooh2jj/deploy-challenge-study: 웹개발 배포 챌린지 스터디 레포지토리입니다... 2023. 4. 9.
[ 서버 사이드 프로젝트 챌린지 ] 23.04.08 -week6 1. 이번 주 스터디에서 학습한 내용 코드리뷰(ERD, API 명세서, 도메인 코드 설명) JPA 정리 각 팀 토의시간 과제 2. 발표 이번 주에 프로젝트에 대한 피드백을 받는 시간을 가지게 되었다. 저번주에 만든 코드와 ERD에 대한 피드백을 받았다. 아직 프로젝트 처음이여서 ERD 피드백과 코드에 대한 부분은 따로 피드백을 내가 작성한 부분에서는 없었고 쿠폰에 대한 부분에서 설계 부분에서 도움을 얻을 수 있었다. QueryDSL로 페이징을 하는 과제를 받아 구현을 하였고 그 코드를 Count를 최적화 하는 코드로 작성을 하였다. 3. JPA 발표 JPA를 처음 학습하는 분들이 많아 JPA에 대해 스터디 장이 발표하는 시간을 가지게 되었다. 기본적으로 JPA에서 제일 중요한 부분을 설명을 하였고 정리한.. 2023. 4. 9.
[ 웹개발 배포 챌린지 ] 23.04.01 - week1 GitHub - mooh2jj/deploy-challenge-study: 웹개발 배포 챌린지 스터디 레포지토리입니다. 웹개발 배포 챌린지 스터디 레포지토리입니다. Contribute to mooh2jj/deploy-challenge-study development by creating an account on GitHub. github.com 1주차 진행한 학습 OT 진행 - 스터디 취지, 구성 방식 설명 Rest API 방식에서 CI/CD 배포를 하려고 한다. 많은 CI/CD 방식이 있지만 Jenkins를 통해서 CI/CD를 하려고 한다. 백엔드 프로젝트 배포 구조도(springBoot - jenkins - docker) gradle 빌드 실습 2. 과제 1) 해당 레포지토리 fork & PR 해보기 .. 2023. 4. 8.
[ 서버 사이드 프로젝트 챌린지 ] 23.04.01 - week5 GitHub - mooh2jj/side-project-challenge-study: 서버 사이드 프로젝트 챌린지 스터디입니다. 서버 사이드 프로젝트 챌린지 스터디입니다. Contribute to mooh2jj/side-project-challenge-study development by creating an account on GitHub. github.com 1. 이번 주 스터디에서 학습한 내용 이번 주에는 프로젝트 소개, 코드 리뷰, 팀 선정을 하였습니다. 이번에 프로젝트는 기존에 국비지원에서 구현한 SSR 방식이 아닌 SPA 방식인 Rest API를 만들려고 한다. 이번 시간에 팀원을 선정을 하였고 프로젝트를 시작을 하였다. 저번 프로젝트에서 팀 컨벤션의 중요성을 알고 컨벤션을 먼저 정하고 프로젝트.. 2023. 4. 7.
[ 서버 사이드 프로젝트 챌린지 ] 23.03.25 - week 4 GitHub - mooh2jj/side-project-challenge-study: 서버 사이드 프로젝트 챌린지 스터디입니다. 서버 사이드 프로젝트 챌린지 스터디입니다. Contribute to mooh2jj/side-project-challenge-study development by creating an account on GitHub. github.com 1. 과제 책 아웃풋 발표 사이드 프로젝트 내용 소개 쿠폰 과제 CRUD 2023. 4. 7.
[ AWS ] AWS랑 친해지기 - 3 (Docker를 이용해서 배포하기) [ AWS ] AWS랑 친해지기-1 (AWS EC2 기본 배포) [ AWS ] 왜 내가 백엔드인데 AWS 클라우드를 배워야 하는가? 내가 왜 AWS를 배워야 하는가? 백엔드 개발을 하면서 Spring으로 개발을 하면 되는데 왜 취업을 하려면 AWS가 필요성에 대해서 생각을 하게 pos04167.tistory.com 1. Docker를 AWS ubuntu에 설치하기 //EC2 인스턴스에 SSH로 접속합니다. //업데이트와 업그레이드를 수행합니다. sudo apt update //Docker를 설치하기 위해 필요한 의존성 패키지를 설치합니다. sudo apt install apt-transport-https ca-certificates curl software-properties-common //Docker.. 2023. 4. 7.
[ AWS ] AWS랑 친해지기 -2 (시간 설정) 시간 설정 우리가 지금 사용하고 있는 시간은 미국으로 잡혀있다. 이러한 시간을 서울로 바꾸어야 한다. timedatectl 일단 aws에서 제공하는 시간이 몇개가 있는지 리스트를 확인을 해보자 timedatectl list-timezones 엄청나게 많은 나라가 나온다. 우리가 원하는 서울을 찾기에는 조금 불편함이 생긴다. 그래서 저번에 학습했던 grep을 이용해서 시간을 찾아보자 timedatectl list-timezones | grep Seoul //서울 시간으로 세팅하기 sudo timedatectl set-timezone Asia/Seoul 명령어 정리 //현재 시간 보기 timedatectl //서울 시간을 grep으로 찾기 timedatectl list-timezones | grep Soul.. 2023. 4. 7.
[ AWS ] AWS랑 친해지기-1 (AWS EC2 기본 배포) [ AWS ] 왜 내가 백엔드인데 AWS 클라우드를 배워야 하는가? 내가 왜 AWS를 배워야 하는가? 백엔드 개발을 하면서 Spring으로 개발을 하면 되는데 왜 취업을 하려면 AWS가 필요성에 대해서 생각을 하게 되었다. 백엔드 개발자는 서버에 대해서 알고 있어야 하 pos04167.tistory.com 1. AWS에 기본적으로 배포하는 방법을 알아보자 일단 시작에 앞서 이번에는 AWS에 내가 작성한 코드를 배포하여 실행하는 방식을 설명을 하려고 한다. 기본적인 흐름으로는 Github에 있는 간단한 프로젝트를 Clone하여 AWS서버에 받아 탄력적 IP에 접속하여 실행하여 정상적으로 배포가 되었는지 확인을 하려고 한다. 2. AWS 탄력적 IP 주소 연결 및 보안 설정 고정 IP 설정 만약에 집 5개가.. 2023. 4. 7.
[ AWS ] 왜 내가 백엔드인데 AWS 클라우드를 배워야 하는가? 내가 왜 AWS를 배워야 하는가? 백엔드 개발을 하면서 Spring으로 개발을 하면 되는데 왜 취업을 하려면 AWS가 필요성에 대해서 생각을 하게 되었다. 백엔드 개발자는 서버에 대해서 알고 있어야 하는데 기존에는 IDC를 이용하여 서버를 관리를 하였다. 하지만 이제는 클라우드를 기반으로 서버를 관리하기 때문에 백엔드를 준비하면 클라우드에 대해서 당연하게 알아야 한다. 나는 많은 클라우드 중에서 AWS를 학습을 하려고 한다. 왜냐하면 많은 회사의 클라우드가 있지만 AWS가 점유율이 가장 높고 많은 회사에서 AWS환경에서 작업을 하기 때문에 AWS를 선택을 하였다. AWS가 클라우드를 주도하는 이유 AWS(Amazon Web Services)가 정점에 도달했다는 소문은 시기상조였다. 민주화된 클라우드 컴퓨.. 2023. 4. 7.
코드숨 스프링 [15기] - 마지막 회고 1. 이번 주에 학습한 내용 Spring REST Docs Javadoc Docker 2. 중점적으로 학습한 부분 Rest Docs Spring Rest Docs를 이용해서 기존에 작성한 API 스펙을 문서화를 하였다. 문서화에는 대표적으로 Rest Docs와 Swagger가 있었으며 코드숨에서 테스트 코드를 작성했기 때문에 Rest Docs를 기반으로 문서화를 진행을 하였다. Docker 도커란 컨테이너 기반의 오픈소스 가상화 플랫폼이다. 이번에 처음으로 도커에 대해 학습을 하였는데 아직 나한테는 너무 생소한 내용이어서 개념을 익힌다는 마음으로 학습을 하였다. 이번에 도커를 사용해서 우분트와 maria db 등 이미지를 받아와서 바로 사용을 했는데 이 부분에서 신기했다. 초보를 위한 도커 안내서 - 도.. 2023. 4. 3.
코드숨 스프링 [ 15기 ] - 7주차 회고 1.이번 주에 학습한 내용 Spring Security를 사용하여 비밀번호 암호화 및 인증, 인가를 적용하라. PasswordEncoder AuthenticationFilter 2. 중점적으로 학습한 부분 1. 스프링 시큐리티에 대해 전반적인 부분을 학습 2. REST API의 Stateless 아키텍처에 대해 조사하는 시간을 가졌다. [ Spring ] Stateless REST With CSRF 1. 글을 작성하는 이유 기존의 서버 사이드 렌더링(SSR)으로 프로젝트를 구현을 했을 때 CSRF처리를 한 경험이 있다. 하지만 코드숨에서 시큐리티 파트를 학습하면서 Rest Api에서 csrf를 사용하지 않 pos04167.tistory.com 3. 반복적으로 이루어지는 인증/인가 처리를 어떻게 해결 [S.. 2023. 3. 28.