젠킨스 CI 설정하기 github의 main 브랜치에 변화가 생기면 자동으로 가져오는 CI를 구축하자. 우선 자신의 깃허브로 접속한 후, 프로필을 클릭해 Settings를 누른다. 그리고 하단에 있는 Developer settings를 클릭한다. Personal access tokens에 들어간 후 Generate new token을 클릭한다. 그리고 아래 사진과 같이 설정한 후 토큰을 발급 받는다. 발급된 토큰은 꼭 복사해서 잘 저장해두자. 그리고 깃허브 리포지토리의 Settings 눌러 webhook 탭을 클릭하고 Add webhook 버튼을 누른다. Payload URL에 젠킨스 서버 IP 또는 DNS를 적고 뒤에 github-webhook/을 추가로 적는다. 그리고 아래 그림과 같이 설정후 Upd..
간단하게 EC2와 Jenkins를 활용하여 CI/CD를 구축하고 테스트 해보자! 흐름은 아래와 같다. 1. github에 Merge&Push 2. main 브런치에 변동이 있으면 github가 webhook을 통해 젠킨스 호출, 호출된 젠킨스는 main 브랜치를 가져와 빌드 3. 빌드된 jar파일을 배포서버로 전송하고 배포 어플리케이션 작성 Springboot&Gradle 간단하게 컨트롤러만 작성해보자. @RestController public class Controller { @RequestMapping("/test") public String test() { return "Hello Jenkins!"; } } 그리고 application.properties에서 포트번호도 바꿔주자. server.por..
EC2 프리티어에 젠킨스를 설치하여 사용하면 서버가 멈추는 경우가 있다. 이는 EC2 프리티어 메모리 용량이 너무 작아 발생하는 현상이다. $ free -h 위 명령어로 메모리 용량을 확인해보자. 위 사진처럼 메모리가 1GB 인것을 볼 수 있다. Swap 공간을 활용하여 메모리를 늘려보자. Swap 메모리 할당 1. dd 명령으로 swap 메모리영역 할당 (4GB(128MB x 32)를 할당했다) $ sudo dd if=/dev/zero of=/swapfile bs=128M count=32 2. 스왑 파일의 읽기 및 쓰기 권한 업데이트 $ sudo chmod 600 /swapfile 3. Linux 스왑 영역 설정 $ sudo mkswap /swapfile 4. 스왑 공간에 스왑 파일을 추가하여 스왑 파..
캐시(Cache) 쿠키(Cookie) 정의 캐시는 웹 페이지 요소를 저장하기 위한 임시 저장소이다. 특히, 후에 필요할 것 같은 요소들을 저장한다. 이러한 요소들은 그림 파일이나 문서 파일 등이 될 수 있다. 쿠키 또한 정보를 저장하기 위해 사용된다. 기본적으로 웹서버에서 PC로 보내는 작은 파일들을 저장한다. 보통 쿠키는 누군가 특정한 웹 사이트를 접속할 때 발생한다. 목적 캐시는 웹 페이지가 빠르게 렌더링 할 수 있도록 도와준다. 쿠키는 사용자의 인증을 도와준다. 삭제 사용자가 직접 수동으로 삭제해주어야한다. 만료기간이 있어 시간이 지나면 자동삭제 된다. 예시 오디오, 비디오 파일 등이 있다. 유저의 선호도 (로그인 정보, 방문기록, 방문횟수) 간단히 캐시는 클라이언트 자체에서 페이지 로드를 효율적으..
서버 테스트시 The Tomcat connector configured to listen on port 8080 failed to start. The port may already be in use or the connector may be misconfigured. 8080포트를 이미 사용중이기 때문에 중지를 해야함 netstat -ano | findstr 8080 taskkill -f -pid {중지할려는 pid} lsof -i :8080 kill -9 {중지하려는 pid}