클로드스킬마트스킬 둘러보기스킬이 뭐예요?
목록으로

Terraform 운영 함정 해결 스킬

Terraform provisioner·다중 환경 분리·초기 배포에서 실제로 터진 장애를 에러별 해결책으로 정리한 실전 스킬입니다.

개발·코딩고급1,323212AI 점수 7/10마지막 업데이트: 2026. 8. 8.

무엇을 해주나

실제 인프라 배포 중 발생한 장애 사례를 정확한 에러 메시지 → 근본 원인 → 복사해서 붙이는 수정 코드 형태로 제공합니다. Claude Code가 Terraform 코드를 작성하거나 terraform apply 실패를 디버깅할 때 이 지식을 자동으로 참조합니다.

주요 커버 범위:

  • Provisioner 함정: docker: not found(cloud-init 미완료), local-exec rsync 연결 끊김, cloud-init이 debconf 프롬프트에서 멈추는 문제, set -e 때문에 진단 로그가 사라지는 문제
  • 컨테이너 장애: 볼륨 권한(EACCES, uid 1001), DB 미생성/마이그레이션 누락으로 인한 Restarting 루프, .env 대신 셸 변수로 build arg를 넘겨 실패하는 문제
  • TLS/도메인: Caddy DNS-01 ACME에 Global API Key 대신 API Token(cfut_)이 필요한 이유, Caddyfile·compose의 하드코딩 도메인을 {$VAR} / ${VAR:?required}로 파라미터화
  • 다중 환경 분리: 전역 유일 리소스 충돌 표, 같은 존에 A 레코드 중복 생성으로 트래픽 50%가 잘못된 인스턴스로 가는 함정, 스냅샷 교차 오염
  • 사전 검증 & 제로부터 배포: terraform apply 전에 로컬에서 잡아내는 7가지 체크리스트

이런 분께 추천

  • Terraform provisioner(remote-exec/local-exec/file)로 원격 호스트를 직접 구성하는 엔지니어
  • staging/production 등 여러 환경을 같은 코드베이스로 운영하려는 팀
  • Docker Compose + Caddy 게이트웨이 + Cloudflare DNS 조합으로 서비스를 올리는 인프라 담당자
  • 배포 → 실패 발견 → 수정 → 재배포 루프를 줄이고 싶은 DevOps

활용 예시

  1. terraform apply 중 remote-exec에서 docker: not found가 났을 때 → Claude가 cloud-init status --wait 게이트를 넣은 provisioner 블록을 제안합니다.
  2. staging 환경만 TLS 인증서 발급이 실패할 때 → Caddyfile에 프로덕션 도메인이 하드코딩됐는지, Cloudflare 자격증명이 API Token 형식인지 순서대로 점검합니다.
  3. 두 번째 환경을 새로 만들기 전 → SSH 키 이름, 로그 프로젝트, DNS 레코드 등 전역 유일 리소스를 ${env}- 접두사로 바꾸도록 .tf 파일을 훑어줍니다.

· · · 설치 가이드 · · ·

Claude 앱에 설치 (터미널 필요 없음)
  1. 아래 버튼으로 ZIP 파일을 받으세요.
  2. Claude 설정 → Capabilities에서 '코드 실행 및 파일 생성'을 켭니다. (한 번만)
  3. Claude에서 Customize → Skills → + → '스킬 업로드'를 누르고 받은 ZIP을 올립니다.
ZIP 내려받기
Claude Code에 설치

Claude에게 맡기기 — 아래 문장을 Claude Code에 붙여넣으세요

클로드스킬마트에서 찾은 스킬을 설치해줘.
GitHub 저장소 daymade/claude-code-skills 의 terraform-skill 폴더를 내 ~/.claude/skills/terraform-skill/ 에 그대로 복사해줘.
설치가 끝나면 이 스킬로 무엇을 할 수 있는지 한 줄로 알려줘.

직접 명령으로 설치하기

git clone https://github.com/daymade/claude-code-skills.git && mkdir -p ~/.claude/skills && cp -r claude-code-skills/terraform-skill ~/.claude/skills/

제3자가 만든 스킬입니다. 설치 전 원본 저장소를 한 번 확인하세요.

  1. 터미널을 열고 스킬을 보관할 임시 위치로 이동합니다: cd ~/Downloads
  2. 저장소를 복제합니다: git clone https://github.com/daymade/claude-code-skills.git
  3. Claude 스킬 폴더가 없으면 만듭니다: mkdir -p ~/.claude/skills
  4. 스킬 폴더를 복사합니다: cp -r claude-code-skills/terraform-skill ~/.claude/skills/
  5. references/ 하위 문서(multi-env-isolation.md 등)까지 함께 복사됐는지 확인합니다: ls ~/.claude/skills/terraform-skill
  6. Claude Code를 재시작한 뒤 "terraform provisioner에서 docker: not found 에러가 나"처럼 물어보면 스킬이 자동으로 활성화됩니다.