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
Github Action으로 코드 커버리지 뱃지 생성하기

Intro Jacoco로 코드 커버리지 측정하기 에 이어지는 글 입니다. 이전 글에서는 코드 커버리지란 무엇인지, 그리고 Jacoco를 활용해 Gradle 혹은 Maven으로 만든 자바 프로젝트의 코드 커버리지를 측정하는 방법에 대해 알아보았습니다. 이번에는 README.md파일에 빌드 성공여부와 코드 커버리지를 뱃지로 만들어 등록하는 방법에 대해 알아보려고 합니다. 별 것 아닌거 같아 보이는 이 뱃지 2개를 다는게 CI/CD를 경험해보지 못한 저에게는 생각보다 쉽지 않았습니다. 이 뱃지를 만드는게 최종 목표가 아니고, 자동 테스트 및 Workflow를 통해 부산물로 얻어지는게 위의 Build 결과와 코드커버리지 뱃지입니다. Github Action 등록 Codecov 회원가입 일단 깃헙 액션에 등록에 ..

Development/DevOps 2023.03.01
무료 SSL 인증서 발급받아 HTTPS 적용하기

Intro 보통 토이프로젝트를 개발 하면 사람마다 다르겠지만 보통은 아래와 같은 순서로 조금씩 발전하게 됩니다. 로컬에 프로젝트를 띄워봅니다. 가장 기본적인 첫 단계 입니다. 각자의 컴퓨터에서 친구들과 같이 개발하기 위해 외부 DB를 연동 합니다. AWS RDS가 가장 쉽지만 잘못하면 비용이 무지막지하게 청구 될 수 있으니 보통 안쓰는 컴퓨터를 서버로 사용하곤 합니다만 방화벽 및 포트포워딩과의 전쟁이 처음 펼쳐집니다. 2단계 치고는 꽤 매콤한 편 입니다. 개발한 프로젝트를 계속 띄워 놓고 싶습니다. 어디서든 접근할 수 있었으면 해서 띄워둡니다. DB서버 띄워놓는 것 처럼 안쓰는 윈도우 PC에 IDE나 외장 톰캣 혹은 스프링 부트를 jar 파일로 바로 띄워놓고 24시간 컴퓨터를 켜 둡니다. 2단계에서 방화..

Development/DevOps 2022.12.14
[도커 방화벽 설정] 엘라스틱서치 특정 IP 클라이언트 접속만 허용하기

Intro 국비학원 최종 프로젝트때 잘 알지도 못하면서 검색 엔진을 도입 했었습니다. 물론 지금도 검색엔진에 대해 잘 모르다보니, 회사에서 진행중인 프로젝트에서 검색엔진을 활용하는 기능을 추가 할때면 SolrJ API를 이리저리 뒤져가며 낑낑대며 간신히 병목이 생기지 않을 정도만 하고 있습니다. 잘 알지도 못하는 검색엔진 도입의 대가는 실로 커서, 장점이라면 그때 당시 도와줄 사람이 없어 처음으로 공식 문서들을 뒤져가며 스스로 무언가를 바닥부터 만들어 내며 맨땅에서도 뿌리를 내릴 수 있는 야생성을 기르고 어떻게든 하면 된다는 자신감을 얻었습니다. 반면 단점도 만만치 않은데 일단 국비학원을 졸업한지 1년 4개월쯤 지난 지금도 그때 당시의 프로젝트를 여전히 띄워 두고 있습니다. 처음엔 집에 남는 노트북으로 ..

Development/DevOps 2022.10.29