팟캐스트 Jekyll 블로그 빌드가 자꾸 멈춘다면? 이미지 변환 작업 타임아웃 해결법
🎙️ 오늘의 팟캐스트
Jekyll 블로그 빌드가 자꾸 멈춘다면? 이미지 변환 작업 타임아웃 해결법
📌 에피소드 주요 내용
- Jekyll 블로그 빌드 중 고화질 이미지 대량 업로드 시 발생하는 타임아웃 문제의 원인은 이미지 자동 변환 작업이 GitHub Actions의 30분 제한시간을 초과하기 때문
- 이미지 파일 사전 최적화, Jekyll 플러그인 설정 조정, GitHub Actions 캐싱 메커니즘 강화 등 세 가지 실무적 해결 방법으로 빌드 시간을 20분대에서 5분 이내로 단축 가능
- 완벽한 초기 설정보다는 심플한 시작에서 점진적으로 문제를 해결하는 방식이 가장 효과적
🎧 전체 대본
지혜: 안녕하세요, 팟캐스트 ‘기술 노트’입니다. 오늘은 노교수님과 함께 Jekyll 블로그 빌드 문제에 대해 얘기해볼 텐데요. 교수님, 은퇴 후 블로그를 시작하셨다고 들었어요.
박교수: 그렇습니다. 40년간 연구한 내용들을 후학들과 나누고 싶어서 말이지. 처음엔 텍스트만 올렸을 때는 아무 문제가 없었거든. 그런데 학생들이 논문의 시각화 자료들을 보고 싶다며 고화질 이미지를 대량으로 올리기 시작했어요. 그 순간부터 GitHub Actions에서 계속 빌드가 실패하는 악몽이 시작됐습니다.
지혜: 아, 그게 이미지 때문이었군요! 처음엔 마크다운 문법 문제라고 생각하셨나요?
박교수: 정확히 그렇습니다. 처음엔 내 마크다운이 잘못된 줄 알고 한 줄 한 줄 점검했거든. 그러다가 GitHub 공식 이슈 게시판을 찾아봤는데, 정확히 같은 증상을 호소하는 사람들이 수십 명이나 있었어요. 그제야 이게 흔한 문제라는 걸 깨달았죠.
지혜: 그럼 원인이 뭐였어요?
박교수: Jekyll이 블로그를 빌드할 때 이미지 최적화를 위해 자동으로 변환 작업을 수행한답니다. WEBP 형식 변환, 썸네일 생성, 해상도 조정 같은 복잡한 처리 말입니다. GitHub Actions는 약 30분의 제한 시간이 있는데, 고해상도 이미지가 많으면 이 시간을 초과하게 되는 거예요. 제 경우 학술 자료 특성상 A4 크기 고해상도 스캔본들이 5~10MB씩 들어가 있었으니까요.
지혜: 그럼 어떻게 해결하셨어요?
박교수: 세 가지 방법을 순차적으로 시도했습니다. 첫째, 빌드 전에 미리 이미지 압축 도구로 파일 크기를 줄였어요. 배치 처리 스크립트로 1000개씩 처리할 수 있었죠. 둘째, Jekyll 설정 파일에서 불필요한 이미지 변환 플러그인을 비활성화하고, WEBP 자동 변환도 껐습니다. 이것만으로도 빌드 시간이 20분대에서 5분 이내로 단축됐어요. 셋째는 GitHub Actions 워크플로우 파일를 수정해서 캐싱 메커니즘을 강화했습니다. 이전 빌드 결과를 재사용하니까요.
지혜: 와, 그렇게 하니까 확실히 달라졌겠네요!
박교수: 현재는 매달 30~50개 포스팅을 하는데 빌드 실패가 거의 없습니다. 포스팅 전 이미지 최적화, 불필요한 플러그인 제거, 그리고 완벽함보다는 점진적 업데이트를 선호하는 방식으로 정착했거든요. 시니어 개발자라면 처음부터 완벽하게 설정하려다 오히려 복잡해지곤 합니다. 차라리 심플하게 시작해서 문제가 생길 때마다 해결하는 게 훨씬 현명합니다.
지혜: 정말 좋은 팁이네요! 혹시 Jekyll 빌드로 고민 중인 분들을 위해 한 가지 더 조언해주실 게 있을까요?
박교수: 당신도 비슷한 문제를 겪고 있다면 이 세 가지 방법을 차례로 시도해보시길 권합니다. 어떤 방법이 가장 효과적이었는지, 또 다른 해결책이 있었는지는 블로그 원문의 댓글에서 공유해주시면 좋겠어요.
지혜: 네, 더 자세한 내용과 설정 예시는 블로그 원문에서 확인하실 수 있어요. 오늘 말씀해주셔서 감사합니다, 교수님!
🔑 핵심 키워드
Jekyll, GitHub Pages, 빌드 타임아웃, 이미지 최적화, GitHub Actions
🔗 관련 링크
- 원문 보기: Jekyll 블로그 빌드가 자꾸 멈춘다면? 이미지 변환 작업 타임아웃 해결법
- 블로그 홈: damesek.com