2026의 게시물 표시

전국 예장합동 교회 11,700곳을 지도에 올렸습니다 — 그리고 홈페이지 없는 9,600곳 이야기

이사를 앞두고 “이 동네에 우리 교단 교회가 있나?”를 찾아보신 적 있으신가요. 저는 있었습니다. 그리고 답을 찾기가 생각보다 어려웠습니다. 교단 홈페이지의 교회 검색은 교회 이름을 이미 알고 있어야 쓸 수 있고, 지도는 없습니다. 포털 지도에 “교회”를 치면 교단 구분 없이 수백 개가 쏟아집니다. 그래서 만들었습니다. 👉 지도 열어보기 · church-map.dsdshouse.com 대한예수교장로회(합동) 전국 165개 노회, 11,700개 교회 를 지도 위에 올렸습니다. 설치할 것도 가입할 것도 없습니다. 링크를 누르면 바로 지도가 뜹니다. 휴대폰에서도 됩니다. 세 개의 화면 ① 1만 교회 인터랙티브 지도 전국 교회가 지도 위에 찍혀 있습니다. 확대하면 흩어지고 축소하면 묶입니다. 우리 동네를 찾아 얼마나 있는지 세어보셔도 좋고, 전국을 축소해서 어디가 빽빽하고 어디가 비어 있는지 보셔도 좋습니다. ② 성도 맞춤형 교회 찾기 & 목록 교회 이름, 담임목사님 성함, 노회, 도로명 주소로 찾습니다. 권역(서울/경기·인천/영남/호남/충청/강원)과 165개 노회로도 좁힐 수 있습니다. 같은 이름이 여럿인 교회는 전국에 흩어진 결과가 한 번에 보입니다. 참고로 전국에서 가장 흔한 교회 이름은 행복한교회(67곳) , 그다음이 아름다운교회(50곳), 반석교회(44곳)입니다. ③ 총회 목회 나눔 마당 교회끼리 필요한 것을 나누는 게시판입니다. 아래에서 따로 말씀드리겠습니다. 지도를 만들다 알게 된 것들 데이터를 들여다보니 숫자가 생각보다 많은 이야기를 하고 있었습니다. 교회는 인구를 그대로 따라가지 않습니다. 수도권에 47.1%가 몰려 있는 건 예상대로였습니다. 그런데 전북·전남·광주를 합치면 2,582곳, 전체의 22.3% 입니다. 인구 비중과 견주면 확연히 높습니다. 호남의 교세가 지도 위에 그대로 드러납니다. 그리고 이 대목이 가장 마음에 남았습니다. 11,700곳 중 홈페이지가 있는 교회는 2,016곳, 17.2% 입니다. ...

pptx 자동 생성에서 6주간 밟은 지뢰 — OneDrive 온라인 전용 파일, LibreOffice 빈 PDF, python-pptx 글자 넘침, 렌더 캐시

앞 글 에서 예배 PPT 자동 생성 파이프라인의 구조를 정리했습니다. 이 글은 그 파이프라인을 6주간 매주 돌리면서 실제로 걸린 문제들입니다. 하나하나는 사소한데, 각각 한 주씩 잡아먹었습니다. 재현 조건과 확인 방법 위주로 적습니다. 1. OneDrive 온라인 전용 파일은 스크립트에서 못 읽는다 악보 812개가 든 폴더가 OneDrive 안에 있습니다. 어느 날 갑자기 모든 파일이 읽기 실패했습니다. OSError: [Errno 35] Resource deadlock avoided os.path.getsize() 는 정상 크기를 돌려주고 os.listdir() 도 잘 됩니다. 열어서 읽을 때만 실패합니다. 원인은 OneDrive의 Files On-Demand (온라인 전용)입니다. 오래 안 열어본 파일은 실체가 로컬에서 지워지고 자리표시자만 남는데, macOS Finder에서 열면 그때 받아오지만 컨테이너·샌드박스 안의 프로세스는 그 다운로드를 일으킬 수 없습니다. 재시도, cp , dd , 다른 API 전부 소용없습니다. 해결은 Finder에서 폴더 우클릭 → "이 기기에 항상 유지" 하나뿐입니다. 코드 쪽에서는 미리 잡아내는 점검만 넣었습니다. def readable(path): try: with open(path, "rb") as f: f.read(4) return True except OSError: return False 4바이트만 읽어도 판별됩니다. 파이프라인 첫 단계에서 이번 주에 쓸 파일만 골라 검사하고, 하나라도 실패하면 나머지를 먼저 만든 뒤 사용자에게 알립니다. 2. LibreOffice는 못 읽는 파일도 '성공'한다 1번보다 이게 더 위험합니다. 온라인 전용 파일을 soffice --convert-to pdf 에 넘기면 에러가 나지 않습니다. 빈 1페이지 PDF를 만들고 ex...

매주 90장 예배 PPT를 자동으로 만드는 파이프라인 — 웹 에디터, Object Storage, 그리고 Claude 스킬

이미지
교회 미디어 봉사를 맡으면 매주 같은 일을 반복하게 됩니다. 찬양 4곡 악보를 찾아 슬라이드로 넣고, 교독문을 절 단위로 나누고, 말씀봉독 본문을 개역개정에서 옮겨 적고, 광고를 정리하고, 설교 제목을 바꿉니다. 평균 90장짜리 PPT가 매주 한 벌씩 나옵니다. 이 글은 그 작업을 웹 입력 → 오브젝트 스토리지 → Claude 스킬 → pptx 로 자동화한 구조를 정리한 것입니다. 6주간 실제 예배에 쓰면서 다듬은 결과이고, 삽질 목록은 별도 글 로 나눴습니다. 1. 전체 구조 [담당자] [Astro 웹 에디터] [OCI Object Storage] 찬양 콘티, 교독문 번호, ──▶ material.ts가 검증·직렬화 ──▶ 자료 - 20260906.txt (사람용) 본문 범위, 광고, 설교 토큰 게이트 API 자료 - 20260906.json (자동화용) │ ▼ (OneDrive 동기화) [Claude Cowork 스킬] [작업 폴더/contexts/] load_material.py ──▶ find_song.py ──▶ render_song.py ──▶ worship_design.py ──▶ 완성 pptx 원고 읽기 악보 812개 중 LibreOffice로 슬라이드 조립·검증 이번 주 것 매칭 PNG 변환 핵심은 두 가지입니다. 첫째, 매주 바뀌는 것만 입력 받습니다. 사도신경, 헌금기도, 축도처럼 고정된 슬라이드는 코드에 상수로 들어 있습니다. 둘째,...

Kubernetes Pod Pending 해결법: FailedScheduling 원인별 실전 점검 가이드

이미지
Kubernetes를 운영하다 보면 Deployment를 배포했는데 Pod가 Pending 상태에서 움직이지 않는 경우가 있습니다. 재시작부터 해보거나 무작정 노드를 증설하기 전에, 스케줄러가 남긴 이벤트를 읽으면 대부분의 원인을 빠르게 찾을 수 있습니다. 이 글에서는 실무에서 자주 만나는 FailedScheduling 메시지를 기준으로 CPU·메모리 부족, taint, nodeSelector, PVC, Pod 수 제한 문제를 순서대로 점검하는 방법을 정리합니다. 1. Pending은 장애 원인이 아니라 현재 상태다 Pending은 Pod 객체가 생성됐지만 아직 실행할 노드가 결정되지 않았거나, 컨테이너 실행에 필요한 준비가 끝나지 않았다는 뜻입니다. 따라서 kubectl get pods 결과만 보고는 원인을 알 수 없습니다. kubectl get pods -A --field-selector=status.phase=Pending 문제가 발생한 Pod를 찾았다면 가장 먼저 상세 정보와 이벤트를 확인합니다. kubectl describe pod <pod-name> -n <namespace> kubectl events -n <namespace> --for pod/<pod-name> describe 출력의 맨 아래 Events 영역에 있는 Reason과 Message가 핵심입니다. 여러 메시지가 반복된다면 가장 최근의 Warning / FailedScheduling 부터 읽습니다. 2. 가장 흔한 원인: CPU 또는 메모리 부족 다음과 같은 메시지가 보인다면 Pod가 요청한 리소스를 수용할 노드가 없다는 뜻입니다. 0/3 nodes are available: 3 Insufficient cpu. 0/3 nodes are available: 2 Insufficient memory. Kubernetes 스케줄러는 현재 사용률이 아니라 Pod에 설정된 resources.requests 의 합계를 기준으로...