Let's encrypt로 SSL 인증서 발급받기

Intro 기존에 ZeroSSL을 활용해서 SSL을 발급받았는데, 90일마다 제법 번거로운 과정을 통해 재발급을 하는건 그래도 견딜 수 있었지만, 다른 도메인 포함 총 3번의 90-Day Certificates 발급을 하고 나니 이제부터는 돈내고 인증서를 발급받으라고 한다. 앞으로 zeroSSL을 쓸 일은 없겠다. 다른 무료 인증서 발급 기관을 찾아보다보니 Let's Encrypt가 사용방법도 편하고 무엇보다 비영리 단체이기 때문에 앞서 경험했던 것과 비슷한 상황을 걱정할 필요도 없고 갱신 방법이 간단하다는 점에서 선택하게 되었다. 심지어 대부분의 문서가 한국어로 번역도 잘 되어 있기 때문에 누구나 손쉽게 사용할 수 있을거라 생각한다. 발급 https://letsencrypt.org/getting..

Development/DevOps 2023.05.20
Github Action을 활용한 SpringBoot 프로젝트 CI/CD

Intro 매번 새로운 커밋이 발생할 때마다 서버에 새로운 버전으로 업로드하고, 기존에 실행 중이던 프로세스를 종료한 후, 새로 업로드한 프로젝트를 실행하는 일련의 과정은 상당히 번거로운 작업입니다. 최근 주목받고 있는 CI/CD 방법론은 이러한 문제를 해결하며 다양한 이점을 제공합니다. CI/CD는 지속적 통합(Continuous Integration)과 지속적 배포(Continuous Deployment)의 약자로서, 소프트웨어 개발 프로세스를 혁신적으로 개선하는데 중요한 역할을 수행합니다. CI/CD를 통해 코드 변경 사항을 자동으로 빌드, 테스트 및 배포함으로써 개발 속도를 높이고 안정성을 확보할 수 있습니다. 이러한 자동화 방법론은 개발자가 수동으로 빌드와 배포 과정을 반복하지 않아도 되게 하여..

Development/DevOps 2023.04.01
Gitlab Runner 등록

Intro Gitlab 에서 CI/CD 파이프라인을 이용해 Merge Request를 할 때 마다 자동으로 빌드를 실행해서 문제가 없는지를 자동으로 테스트 하려는 그럴싸한 계획을 가지고 있었습니다. 테스트 과정에서 꽤나 무거운 스프링 컨테이너를 띄우지만 로컬에서는 어렵지 않게 돌렸기 때문에 큰 걱정은 안했습니다. 야심차게 Merge Request와 함께 파이프라인이 작동을 시작했고, CPU와 메모리 사용량이 급격히 증가하며 결국 버티지 못하고 사내 깃랩서버는 그대로 뻗어버렸습니다. Gitlab Runner GitLab Runner is an application that works with GitLab CI/CD to run jobs in a pipeline. 그리하여 같은 잘못을 되풀이 하지 않기 위해..

Development/DevOps 2023.03.31
Docker 용량 부족할 때 저장 경로 변경

Intro no space left on device 도커 컨테이너를 띄우려는데 용량이 없다는 에러가 발생했습니다. 사실 로컬에서는 평소에 용량 관리가 어느 정도 된다면 만나지 않을 상황인데, 클라우드에서는 메인 SSD 용량은 적게 가져가고 하드디스크나 NAS를 추가로 마운트하는 식으로 관리하다 보니 금방 찰 수 있습니다. No space left on device 에러를 처음 만난다면 일단 정리를 한번 해 주는 게 좋습니다. docker system prune 이렇게 하면 모든 멈춰있는 컨테이너, 네트워크, 사용하지 않는 이미지나 빌드캐시 등을 제거해줍니다. 불필요하고 반복된 작업으로 쓸모없는 데이터들이 많이 쌓였었다면 이 명령 하나로 당분간은 해결되기도 합니다. 하지만 전체적으로 용량 확인 해 보면 ..

Development/DevOps 2023.03.21
Gradle 프로젝트 maven cental repository 에 배포하기

Intro 제가 코딩테스트 문제풀이를 할 때, 테스트코드 작성을 보다 쉽고 간단하게 하려고 만들어둔 라이브러리가 있습니다. 항상 반복적으로 작성하던 부분들도 시간이 아까워서 조금씩 기능을 넣다 보니 나름 leetcode 문제 풀이 할 때 도움이 많이 됩니다. 혼자만 오랫동안 사용해왔었는데, 주변에 마찬가지로 코딩문제 풀이를 하지만 테스트를 너무 번거롭고 어렵다는 이유로 아예 작성하지 않는 친구들에게 소개해주었습니다. 어떨지 몰랐는데 써보더니 너무 좋다며 유용하게 사용하고 테스트도 열심히 작성하길래 다른 관심있는 분들도 쉽게 사용할 수 있도록 하기 위해 메이븐 central에 배포하기로 결정을 했습니다. 이전에는 jitpack 으로만 배포했었는데.. 이번에 작업해보며 난이도 차이가 너무 커서 당황스러웠습니..

Development/DevOps 2023.03.02