로컬 개발환경
↓
Docker / OrbStack
↓
Nginx / HTTPS
↓
S3 + CloudFront
↓
GitHub Actions CI/CD
↓
환경변수 / Secret / SSM
↓
로그 / 모니터링
↓
배포 체크리스트 / Runbook
↓
운영 자동화 로드맵
개발:
기능을 만든다
DevOps:
기능을 안전하게 운영한다
운영:
사용자가 문제없이 계속 쓸 수 있게 한다
local:
개인 Mac 개발
development:
내부 개발 테스트
staging:
운영 반영 전 검증
production:
실제 고객/운영자 사용
앱:
Mac Node에서 npm run dev
DB:
OrbStack PostgreSQL 컨테이너
Redis:
필요할 때만 컨테이너
주의:
localhost와 service name 구분
사용자
↓
Nginx :443
↓
NestJS / PM2 / Docker :3000
index.html은 짧은 캐시, hashed assets는 긴 캐시가 핵심입니다.S3:
원본 파일 저장
CloudFront:
CDN 캐시 제공
중요:
index.html과 assets 캐시 분리
SPA fallback 설정
CloudFront invalidation
workflow_dispatch 수동 실행으로 시작하는 것이 안전합니다.push / PR
↓
GitHub Actions
↓
verify
↓
배포 가능 여부 확인
.env, .env.example, GitHub Secrets, AWS SSM Parameter Store를 정리했습니다.프론트 env:
공개된다고 생각
백엔드 Secret:
SSM SecureString
원칙:
Git에 Secret 금지
AI에게 Secret 제공 금지
로그:
무슨 일이 있었는지 기록
모니터링:
문제가 커지기 전에 감지
장애 대응:
증상 → 영향 범위 → 최근 변경 → 로그 → 임시 대응 → 근본 해결
배포 전:
verify + env + migration + rollback 확인
배포 후:
health check + smoke test + log 확인
문제 발생:
Runbook 기준 대응
자동화:
검증, 배포, 기록, 알림 보조
사람:
최종 판단, 운영 승인, 장애 대응
특징:
로컬에서 직접 빌드
배포 명령어 기억에 의존
로그 확인 위치 불명확
장애 대응 즉흥적
작업 기록 없음
위험:
배포 실수 반복
문제 원인 추적 어려움
성과 설명 어려움
혼자 감으로 운영
특징:
pnpm verify 또는 npm run verify 존재
배포 전 체크리스트 존재
Smoke Test 기준 존재
.env.example 정리
GitHub Actions CI 일부 적용
목표:
깨진 코드 배포 방지
배포 전 확인 습관화
특징:
프론트 S3/CloudFront 배포 스크립트 존재
CloudFront invalidation 기준 존재
백엔드 재시작 절차 문서화
배포 기록 템플릿 존재
롤백 Runbook 존재
목표:
배포 절차 표준화
문제 발생 시 되돌릴 기준 확보
특징:
health endpoint 존재
API request log 존재
상담 신청 실패 로그 존재
관리자 로그인 실패 로그 존재
Nginx/PM2/Docker 로그 확인법 문서화
장애 기록 템플릿 존재
목표:
장애를 감으로 찾지 않기
로그 기반으로 원인 좁히기
특징:
git diff 리뷰 자동화
커밋 메시지 추천
작업 요약 자동 생성
릴리즈 노트 초안 생성
Notion/Markdown 기록
장애 기록 초안 생성
목표:
운영 기록 자동화
성과 자료화
1인 개발자의 기억 의존도 감소
특징:
staging/production 분리
production 수동 승인 배포
SSM Secret 관리
알림/모니터링
백업/복구 Runbook
비용/보안 점검
목표:
운영 사고 방지
장애 대응 속도 향상
서비스 신뢰도 확보
메인/상품 목록
↓
상품 상세
↓
혜택/요금 확인
↓
상담 신청 CTA
↓
상담 신청 모달
↓
전화번호/정보 입력
↓
신청 완료
중요한 이유:
상담 신청은 매출/리드와 직접 연결
모바일 사용성 영향 큼
폼 검증/에러 처리 중요
관리자 로그인
↓
상담 목록 조회
↓
검색/필터
↓
상담 상세 확인
↓
상태 변경
↓
엑셀/운영 처리
중요한 이유:
운영자가 매일 사용하는 핵심 화면
상태 변경 오류는 업무 혼선 유발
권한/로그/검색 재현성 중요
git diff 확인
↓
verify
↓
CI
↓
env/migration 확인
↓
배포
↓
health check
↓
Smoke Test
↓
로그 확인
↓
배포 기록
중요한 이유:
기능 추가보다 배포 안정성이 운영 신뢰를 결정
배포 기록이 있어야 장애 원인 추적 가능
1. pnpm verify 또는 npm run verify 정리
2. GitHub Actions CI 추가
3. 고객 상담 신청 Smoke Test 문서화
4. 관리자 상담 목록 Smoke Test 문서화
5. 프론트 배포 체크리스트 작성
6. 백엔드 배포 체크리스트 작성
7. CloudFront 캐시 Runbook 작성
8. Nginx 502 Runbook 작성
9. 상담 신청 실패 로그 추가
10. 배포 기록 템플릿 작성
| 항목 | 효과 |
|---|---|
| verify | 배포 전 기본 검증 |
| CI | main 안정성 확보 |
| Smoke Test | 핵심 기능 장애 조기 발견 |
| 체크리스트 | 반복 실수 방지 |
| Runbook | 장애 대응 속도 향상 |
| 실패 로그 | 원인 추적 가능 |
| 배포 기록 | 장애/성과 추적 가능 |
Kubernetes
복잡한 Blue-Green 배포
대규모 APM 전체 도입
모든 테스트 E2E 자동화
운영 DB 자동 migration rollback
모든 장애 자동 복구
멀티 리전 구조
검증 명령어
CI
수동 승인 배포
health check
핵심 이벤트 로그
Runbook
배포 기록
작업 요약 자동화
docs/
ops/
README.md
environments.md
secrets-ssm.md
deploy-frontend.md
deploy-backend.md
smoke-test.md
monitoring.md
rollback.md
runbooks/
incident-nginx-502.md
incident-consult-submit-failed.md
incident-admin-login-failed.md
incident-cloudfront-cache.md
incident-db-migration.md
releases/
2026-08-12.md
daily/
2026-08-12.md
docs/ops/README.md운영 문서 소개
배포 전 기본 루틴
장애 발생 시 확인 순서
주요 문서 링크
docs/ops/environments.mdlocal/development/staging/production 차이
DB/API URL 기준
주의할 환경변수
운영에서 금지할 값
docs/ops/secrets-ssm.mdSSM 경로 규칙
String/SecureString 기준
AWS profile 기준
GitHub Secrets 목록
Secret rotation 기준
docs/ops/smoke-test.md고객 화면 Smoke Test
관리자 화면 Smoke Test
백엔드 Health Check
배포 후 로그 확인
1. git status 확인
2. git diff 확인
3. AI diff 리뷰 선택적으로 실행
4. pnpm verify 실행
5. CI 통과 확인
6. env 변경 여부 확인
7. DB migration 여부 확인
8. 배포 위험도 판단
9. 롤백 가능성 확인
10. 배포 실행
verify 실패
CI 실패
운영 env 불명확
DB migration 영향 불명확
상담 신청 영향 확인 안 됨
관리자 로그인 영향 확인 안 됨
롤백 방법 불명확
Secret이 코드에 포함됨
1. health check 확인
2. 운영 URL 접속
3. 고객 상담 신청 흐름 확인
4. 관리자 로그인 확인
5. 상담 목록/검색/상태 변경 확인
6. Nginx/Backend 로그 확인
7. API 5xx 증가 여부 확인
8. CloudFront 캐시 반영 확인
9. 배포 기록 작성
10. 남은 TODO 정리
프론트 흰 화면
Chunk Load Error
CORS error
401/403 반복
API 500
Nginx 502
DB connection error
상담 신청 실패
관리자 로그인 실패
1. 장애 등급 판단
2. 영향 범위 확인
3. 최근 배포 확인
4. 로그 확인
5. 임시 대응 결정
6. 롤백 또는 hotfix 판단
7. 복구 확인
8. 장애 기록 작성
9. 재발 방지 TODO 생성
10. Runbook 업데이트
P0:
사이트 전체 접속 불가
P1:
상담 신청 불가
관리자 로그인 불가
상담 처리 불가
P2:
일부 운영 기능 실패
알림톡/엑셀 실패
P3:
일부 UI 깨짐
문구/이미지 오류
원인 모르고 서버만 반복 재시작
운영 DB를 감으로 수정
로그 없이 추측
장애 기록 없이 종료
롤백 기준 없이 계속 hotfix
Secret을 공유 채팅에 붙여넣기
.env Git 커밋 금지
프론트 env에 Secret 금지
GitHub Actions 로그에 Secret 출력 금지
운영 DB를 로컬/CI 테스트에 사용 금지
DB/Redis 외부 포트 공개 금지
S3 public access 의도 없이 열지 않기
AWS IAM 최소 권한
AI에게 Secret/개인정보 제공 금지
배포 전:
Secret 노출 여부 확인
공개 레포 전:
gitleaks detect
AWS 작업 전:
profile/region/account 확인
운영 장애 공유 전:
로그/스크린샷 마스킹
Secret 노출 의심:
즉시 rotation
EC2
RDS
S3
CloudFront
CloudWatch Logs
ECR
Data Transfer
NAT Gateway
AWS Budgets 알림 설정
CloudWatch Logs 보관 기간 설정
S3 lifecycle 검토
안 쓰는 EBS/EIP/스냅샷 확인
RDS 스토리지 증가 확인
CloudFront 트래픽 확인
월 1회 비용 점검
예상보다 증가하면 원인 확인
로그 저장 비용 방치하지 않기
미사용 리소스 정리
RDS/PostgreSQL
S3 업로드 파일
SSM Parameter 목록
배포 artifact
GitHub repository
운영 문서
DB snapshot에서 복구 가능한가?
S3 파일을 이전 버전으로 되돌릴 수 있는가?
이전 프론트 build로 롤백 가능한가?
운영 Secret을 재생성할 수 있는가?
Runbook으로 복구 절차를 따라 할 수 있는가?
백업 파일 Git 커밋 금지
운영 DB 덤프 로컬 저장 주의
개인정보 포함 dump 보관 주의
복구 테스트 없는 백업은 반쪽짜리
프론트엔드와 백엔드 배포 전 lint/test/typecheck/build 검증 흐름을 정리하고 GitHub Actions CI를 도입해 main branch 안정성과 운영 반영 전 검증 체계를 개선했습니다.
S3 + CloudFront 기반 프론트 배포 절차, 캐시 무효화 기준, Smoke Test 체크리스트를 정리해 배포 후 구버전 파일 노출 및 상담 신청 장애 가능성을 줄였습니다.
상담 신청, 관리자 로그인, 상태 변경 같은 핵심 이벤트의 성공/실패 로그 기준을 정리해 운영 장애 발생 시 원인 추적이 가능한 관측 기반을 마련했습니다.
Nginx 502, CloudFront 캐시, 상담 신청 실패, 관리자 로그인 실패 상황별 Runbook과 배포 후 Smoke Test를 문서화해 장애 대응 절차를 표준화했습니다.
환경변수와 Secret을 로컬/개발/운영 기준으로 분리하고 AWS SSM Parameter Store 기반 관리 방안을 정리해 민감정보 노출 위험을 줄이는 구조를 설계했습니다.
주제:
PostgreSQL
Prisma
Index
Transaction
Lock
Query Optimization
Migration Strategy
Backup/Restore
Audit Log
적합한 이유:
상담/주문/상품/유입 데이터가 서비스 핵심
관리자 검색/필터 성능과 직접 연결
DB migration과 운영 안정성에 중요
주제:
Domain Service
Repository Pattern
Transaction Boundary
Queue/Worker
Event-driven
Webhook
ExportJob
Audit Log
Permission Policy
적합한 이유:
3사 프로젝트 확장
상담/주문/상태 변경 이력
엑셀 Export
알림톡/외부 API 연동에 중요
주제:
local-llm-work-report
Git diff 요약
Notion 업로드
커밋 메시지 자동화
릴리즈 노트 자동화
장애 기록 자동화
QA 체크리스트 자동 생성
적합한 이유:
이미 진행 중인 local-llm-work-report와 직접 연결
작업 기록과 성과 자료화에 효과적
1인 개발자 생산성 향상
0813 데이터베이스 실무 심화 (1/N): PostgreSQL 기본 구조, 테이블과 관계 설계
0813:
PostgreSQL 기본 구조, 테이블과 관계 설계
0814:
Prisma Schema 설계와 Migration 전략
0815:
Index 기본, 검색/필터 성능 최적화
0816:
Transaction, 동시성 문제와 데이터 정합성
0817:
상담/주문 상태 변경 이력과 Audit Log 설계
0818:
Pagination, Sorting, 관리자 목록 조회 최적화
0819:
Soft Delete, 복구, 데이터 보존 정책
0820:
DB Backup, Restore와 운영 장애 대응
0821:
Query 분석, EXPLAIN과 느린 쿼리 개선
0822:
1인 개발자 DB 운영 체크리스트
.env.example이 최신인가?pnpm verify 또는 npm run verify가 있는가?/health endpoint가 있는가?.env가 Git에 올라가지 않는가?온라인 휴대폰 판매몰을 1인 개발자로 운영하고 있어.
현재 구조:
1. 프론트는 React + Vite, S3 + CloudFront 배포
2. 백엔드는 NestJS + Prisma, PostgreSQL/RDS 사용
3. 로컬은 Mac + OrbStack PostgreSQL 사용
4. GitHub Actions CI/CD를 도입하려고 함
5. 환경변수와 Secret은 AWS SSM/GitHub Secrets로 관리하려고 함
6. 고객 핵심 흐름은 상품 상세 → 상담 신청
7. 관리자 핵심 흐름은 로그인 → 상담 목록 → 상태 변경
8. AI/Codex와 local-llm-work-report로 작업 기록 자동화를 하고 싶음
요청:
- 현재 운영 성숙도 Level 평가 기준
- 가장 먼저 보완할 10개 항목
- 배포 전/후 최종 루틴
- 장애 대응 최종 루틴
- 보안/비용/백업 체크리스트
- 문서 구조 추천
- 다음 학습 시리즈 추천
- 연봉협상/경력기술서에 쓸 성과 표현
을 실무 기준으로 정리해줘.
현재 규모에 비해 과한 구조를 강요하지 않는가?
상담 신청과 관리자 상담 처리를 핵심으로 보는가?
운영 DB/Secret/개인정보 위험을 낮게 보지 않는가?
배포 후 Smoke Test와 로그 확인을 포함하는가?
장애 기록과 Runbook 업데이트를 강조하는가?
성과 표현이 과장되지 않고 실무 효과 중심인가?
상품 상세 → 상담 신청, 관리자의 로그인 → 상담 목록 → 상태 변경, 개발자의 검증 → 배포 → Smoke Test → 로그 확인 → 기록입니다.수동 운영 → 기본 검증 → 표준 배포 → 관측 가능한 운영 → 자동화된 운영 기록 → 안정적 운영 체계 순서로 올라갑니다.git diff → verify → CI → env/migration 확인 → 위험도 판단 → 롤백 가능성 확인을 지켜야 합니다.health check → 고객 상담 신청 → 관리자 로그인/상담 목록 → 로그 확인 → 배포 기록을 확인해야 합니다.