쉘 스크립트 대신 Dockerode를 고른 이유: 멀티 테넌트 프로비저닝의 롤백과 동시성

docker run을 감싼 쉘로는 실패 원인도 롤백도 다룰 수 없어 Dockerode와 스키마 분리로 테넌트 생성을 자동화한 과정

2025년 7월 14일 · 6 분

ModSecurity가 ?data=test를 403으로 막기까지

Ubuntu 컨테이너의 Nginx에 ModSecurity를 붙이고, test가 든 요청만 403으로 막히는 것을 access log와 audit log로 확인했다.

2024년 8월 12일 · 4 분

Mac에서는 Metricbeat를 컨테이너 밖에 깔아야 했다

Docker ELK에 Metricbeat 컨테이너를 붙였지만 Mac 호스트 메트릭은 수집되지 않아, Mac에 직접 설치해 Kibana에서 CPU 사용량을 확인했다.

2024년 7월 10일 · 3 분

Nginx 한 대로 시험한 ELK를 Nginx Proxy Manager에 합치기

Nginx 컨테이너로 로그 전달 경로를 먼저 확인하고, 같은 볼륨 공유 방식으로 Nginx Proxy Manager에 ELK를 합쳐 ModSecurity 로그를 Kibana에 쌓았다.

2024년 7월 7일 · 8 분

Nginx Proxy Manager - Official Guide & Local Setup for Customization

커스텀을 위해 코드 수정 후 Nginx Proxy Manager를 정상적으로 실행할 수 있어야했는데, 그 어디에서도 이를 위한 가이드를 찾을 수 없었다. 결국 직접 소스코드 분석 후 다음과 같은 내용들을 확인했다.

2024년 7월 5일 · 3 분

WAR를 손으로 풀어 올리던 Tomcat 배포프로세스 변경

WAR를 직접 풀어 복사하던 배포를 Tomcat 자동 배포 동작을 추적해 파일 복사 한 번으로 줄였고, 5~10분이던 배포가 30초가 됐다

2023년 5월 11일 · 6 분