← → 이동 · 숫자 장 이동 · O 목차 · F 전체화면 · Esc 처음
1 / 22
N U L L U S

파이프라인 구축을,
클릭 몇 번으로

컨테이너 환경의 DevSecOps 파이프라인 자동 구축 플랫폼

CloudBro Ship to Production| OPEN PROJECT : SEASON III
3차 기술 검증 nullus.io Apache 2.0 v0.6.0
Nullus Team · 팀장 박준희

팀 소개Cloud Nullus 6인

박준희
위니텍 · 팀장
박준희 LinkedIn QR
허유정
삼성전자
허유정 LinkedIn QR
이기하
OPDC
이기하 LinkedIn QR
정규민
MOBILIGENT
정규민 LinkedIn QR
장미영
OPDC
장미영 LinkedIn QR
고동환
아이에이클라우드
고동환 LinkedIn QR
LINKEDIN 프로필 (QR 스캔)

세잎 매듭 · trefoil

Null(없음)에서 세 가닥이 서로를 지나 하나로
  • 쿠버네티스 · 인프라 · 애플리케이션이 따로 놀지 않고 한 흐름으로
  • 개별 조직이 반복하던 파이프라인 구축을 커뮤니티 공동 자산으로
  • 검증된 OSS 조합과 설치 순서를 코드와 데이터로 공개 · Apache 2.0

문제 정의수작업 구축에 필요한 160개의 결정

소스부터 인증까지 연동하려면 OSS 20~30종의 선정·버전 정합·순차 설치가 필요하며, 현장에서는 6~18개월이 걸린다

160+
상호 의존 결정 항목
20+
설치 대상 OSS
× 4
버전 축
29
설치 스텝
33
규모 문항
선택
검증된 조합이 없다
CNCF 200여 개 중 어떤 조합이 안전하게 동작하는지 아는 주체가 없다
순서
순서 오류는 후속 단계에서야 드러난다
설치 순서 의존이 겹쳐 있어, 한 단계가 틀리면 한참 뒤 다른 단계에서 증상이 나타난다
전수
인수인계가 안 된다
절차가 스크립트에만 남아, 담당이 바뀌면 해독부터 다시 시작한다
CNCF의 검증된 OSS를 선별하고, 설치 순서·선정 근거·재현 절차를 코드와 데이터로 공개한다
수치는 2차 검증(v0.4.1) 기준. 버전 축은 앱 버전, Helm 차트, 이미지 태그, K8s 호환 범위의 네 가지

7단계 전 구간 지원3차 신규: 보안·복구

01
클러스터 등록
kubeconfig 암호화
→
02
템플릿 선택
Golden Path
→
03
OSS 설치
+ 이미지 취약점 스캔
→
04
배포 템플릿
+ eGov 샘플
→
05
CI/CD 구축
+ 보안 게이트 4종
→
06
앱 배포
Clone → Build
→
07
로깅 · 모니터링
+ 경보 → 알림 채널
전 구간 공통: 백업/복구, 업그레이드, AI 어시스턴트, MCP
보안
배포를 막는 게이트
시크릿 탐지 · SAST · 의존성 · 이미지 스캔
공급망
설치 OSS와 Nullus 이미지
CVE 대응 정책 · SBOM · 서명
운영
백업 · 복구 · 업그레이드
복구 리허설 · 확인된 업그레이드 경로
AI
MCP · 어시스턴트
묻는 사람의 권한으로 조회
2차 검증에서 "다음 과제는 운영 신뢰성"이라고 밝혔고, 이번에 추가한 기능이 그 이행 결과다

v0.5.0 → v0.6.0 개발 현황두 달간 PR 136건

v0.5.0(8/31) 이후 머지된 PR 136건, 커밋 389건

2×
테스트 수 2배 증가

기능 추가와 함께 Go 테스트 함수도 1,576건에서 3,225건으로 확충했다

7 → 11
백엔드 모듈
72 → 106
DB 마이그레이션
3,225
Go 테스트 함수
1,393
웹 단위 테스트
44 × 2
문서 쪽수 · 한 / 영
새 모듈 4backup · notification · mcp · assistant
문서cloud-nullus.github.io/nullus (한국어·영어, 화면 캡처 자동 생성)
측정 기준: 저장소 10/21. Go 테스트 함수는 func Test* 개수, 웹 단위 테스트는 vitest 통과 수

2차 검증 피드백13건 이행 현황

반영 7방안 확정 1로드맵 1백로그 4
#받은 질문 · 피드백 (08-22)이슈 (기획 저장소)상태장
01다른 화면으로 가면 진행 중 표시가 없다#66반영07
02인앱 피드백 (좋아요/싫어요 + 화면 캡처)#67반영 · 방식 바꿈(GitHub 이슈)07
03기존 K8s에 CLI로 통합할 수 있나 (Q5)#61반영 · MCP 서버 · CLI는 최소13
04AI 어시스턴트 논의가 있는가 (Q3)#73 · #94반영 · 1단계 조회13
05운영 모드에서 도입한 도구의 업그레이드 (Q1)#70반영 · Argo CD부터11
0610월까지 백업 / 복구 (현장 공표)#75반영12
0710월까지 보안 보완 (현장 공표)#64 · #76~#80 · #65반영08~10
08설계 문제로 리소스가 폭주할 때 복구 (Q4)#69 · #99~#107방안 확정 · 1단계 연말까지19
09MLOps 계획과 일정 (Q2)#71로드맵 드래프트18
10자체 인프라 시크릿 · BYOK · IdM (Q6)#68백로그19
11환경별 도구 조합 추천, 노하우 + AI (Q1)#72백로그19
12기구축 환경 연결 · CSP 레퍼런스 파이프라인 (Q6)#62백로그19
13UI/UX A/B 테스트#74백로그19

진행 중 작업 알림·피드백즉시 반영 약속 2건 구현

2차 검증 현장에서 "바로 반영"을 약속한 2건을 모두 헤더 기능으로 구현했다

Nullus 헤더 오른쪽: 관리자 배지, 알림 종, 언어 전환, 튜토리얼, 피드백, 테마 아이콘 ① 진행 중 작업 ② 피드백
① #66 · 9월 완료
진행 중 작업 알림
스택 설치·배포 작업이 진행되는 동안 종 아이콘이 움직이고, 드롭다운에 이름·단계·경과 시간을 보여 준다. 누르면 해당 상세 화면으로 이동한다
서버 변경 없이 기존 목록 API 두 개를 조합한다. 진행 중 작업이 있을 때만 3초 간격으로 조회하고, 완료되면 중단한다
② #67 · 10월 완료
피드백 → GitHub 이슈
헤더 아이콘이 저장소 이슈 페이지를 새 탭으로 연다. 접수·분류·답변은 GitHub 이슈에서 처리한다
위젯 대신 이슈 링크를 택한 이유: 화면을 자동 캡처하면 시크릿·토큰이 함께 찍힐 수 있다

파이프라인 보안 게이트 4종심각도 기반 배포 차단

결과만 보여 주면 오픈소스를 붙인 것에 불과하다 — 심각도별 배포 가능 / 불가 정책이 있어야 의미가 있다08-30 팀 회의, 보안 범위를 정하며
1 · 커밋
빌드 전
시크릿 탐지gitleaks
이번 푸시의 커밋에서 시크릿 유출을 찾는다
#80
2 · 락파일
빌드 전
의존성 취약점 (SCA)Trivy fs
취약한 의존성을 빌드 전에 막는다
#79
3 · 소스
SASTSonarQube
Quality Gate를 통과하지 못하면 배포하지 않는다
#64
4 · 이미지
배포 전
이미지 스캔Trivy
정책 등급 이상의 취약점이 있으면 배포 전에 멈춘다
#76
정책: 스택 단위 차단/경고 스캐너 장애는 "차단"과 구분해 표시 GitLab CI · GitHub Actions · Jenkins
Nullus CI/CD 실행 기록: demo-api 실행 #1, 이미지 스캔 경고와 함께 통과(C0 H2 M6 L0), SAST Quality Gate 통과, 의존성 대상 없음, 시크릿 탐지 없음, 단계 SecretScan · DependencyScan · Build · SAST · ImageScan · Deploy
실제 실행 기록: 보안 게이트를 포함한 6단계 (10/21 시연)

공급망 보안설치 OSS·릴리즈 이미지 전체 스캔

① 스택이 설치한 OSS · #76 · #78
설치한 이미지를 스캔해 고지하고, 대응 기한은 정책으로 정했다
공용 구성요소(cert-manager, metrics-server, External Secrets)까지 24시간마다 자동 스캔한다. 새 CVE는 외부 노출 여부까지 판정해 알림 채널로 고지하고 첫 고지 시각을 기록한다
에어갭 환경은 반입한 취약점 DB로 스캔하고 DB 기준일을 표시한다
② Nullus 릴리즈 이미지 · #77
릴리즈 이미지는 SBOM·서명 증적과 함께 배포한다
API·Web·Jenkins·SonarScanner 네 이미지에 SBOM(SPDX)과 SLSA provenance(Sigstore 서명)를 붙인다. gh attestation verify로 누구나 검증할 수 있다
릴리즈 태그에서 수정판 있는 CRITICAL이 하나라도 있으면 릴리즈를 중단한다. 10/21 기준 0건
설치 OSS CVE 대응 정책
01 · 자동
탐지
24시간마다 재스캔
→
02 · 자동
1차 판정 A~D
수정판 × 심각도 × 외부 노출
→
03 · 자동
고지
알림 채널 · 첫 고지 시각 기록
→
04 · 운영 약속
검증된 업그레이드 기한
A 7일 · B 30일 · C 분기 — 첫 고지부터
탐지 · 판정 · 고지는 제품이 자동으로 하고, 기한은 코드가 세지 않는 운영 약속이다 — 못 지키면 릴리즈 노트 ### Security 에 사유와 목표일을 적는다. 리허설을 거친 업그레이드가 그 CVE 를 고치면 버전 업그레이드 탭이 먼저 보여 준다(검증된 경로는 지금 Argo CD)

보안 대시보드조직 전체 현황과 조치 우선순위

보안 대시보드: 차단된 앱 0/1, 시크릿 탐지 앱 0, CRITICAL 보유 앱 0, 판정 불가 앱 0, 설치 OSS 조치 대상 32 이미지, demo-api의 시크릿 · 의존성 · SAST · 이미지 판정과 오른쪽 요약
관측성 › 보안 › 보안 대시보드 (#65), 10/21 시연 화면
01
조직 전체를 한 화면에
차단된 앱 · 시크릿 탐지 · CRITICAL · 판정 불가 · 설치 OSS 조치 대상
02
앱 × 게이트 한 줄
시크릿·의존성·SAST·이미지 판정을 앱마다 한 줄로 보여 주고, 누르면 원인과 리포트로 이동한다
03
설치 OSS 탭
스택별 스캔 결과와 가장 심각한 이미지
기존에는 파이프라인·스택 단위로만 조회되어 조직 차원의 조치 우선순위를 파악하기 어려웠다

설치 OSS 업그레이드검증된 경로 기반

DevOps 조직은 5명 → 3명 → 1명으로 줄며 운영 모드로 간다. 그때 가장 어려운 게 도입한 도구의 업그레이드다2차 검증 Q1, 기술 검증 참여자
01
검증 번들
리허설한 출발 → 대상 차트
→
02
사전 점검 6가지
결과와 해결 방법을 먼저
→
03
백그라운드 적용
--atomic --wait
→
04
상태 확인
워크로드 · 이미지
→
05
자동 되돌리기
실패하면 출발 버전으로
사전 점검
1스택 설치 완료 2진행 중 업그레이드 없음 3릴리스 상태 4버전 경로 확인 524시간 이내 복구 가능한 백업 6Helm server dry-run
표시검증된 경로가 없으면 "검증된 업그레이드 경로 없음"으로 표시한다(미검증 버전은 권하지 않음)
확대첫 지원 대상은 Argo CD. 대상 확대는 코드 수정 없이 검증 번들 등록으로 가능하다(관리 › 스택 버전 관리 › 업그레이드 번들 — 영상 16단계)
10/21 시연: Argo CD 차트 7.7.16 → 7.7.22, 사전 점검 6항목 통과 후 적용, 완료 뒤 demo-api Synced/Healthy

백업·복구복구 리허설로 검증 완료

8/30 기준 백업·복구 코드는 없었다. 완료 기준을 "복구 리허설 성공"으로 정의하고 개발했다

관리 › 백업: 2026.10.21 nullus-gitlab-argocd-sonarqube full 백업 993.6 MB, 68.8초, succeeded 터미널: 복구 뒤 지문 비교, 이미지 태그 · Argo CD 리비전 · 실행 기록이 백업 전과 일치
10/21 시연: full 백업 → 스택 삭제 → 복구 → 지문 일치
범위 · #75
플랫폼과 조직의 모든 스택을 한 세트로 백업한다. 대상: 플랫폼 DB, 스택별 금고(OpenBao), OSS 데이터(PVC), 클러스터 리소스
리허설
마지막 스택을 지운 빈 클러스터로 복구하는 리허설을 4회 진행해 결함 7건을 찾아 고쳤다
FK 순서ESO CRD모니터링 CR내부 CA 앱 네임스페이스재개 거짓 경보SQLSTATE 0A000
키 · #85
암호화 키 유실에 대비한 키 자재 에스크로 런북(ENCRYPTION_KEY, unseal key, 봉인 키, 목적지 자격증명). 백업 결과는 알림 채널로 전송한다

AI 어시스턴트·MCP사용자 권한 기반 조회

질문
화면 대화창
자연어
→
모델
조직이 고른 모델
키는 조직별 암호화
→
도구
MCP 조회 6종만
변경 도구 없음
→
호출
Nullus API
질문한 사용자의 인증
→
권한
RBAC 서버 한곳
화면과 같은 검사
MCP 서버 v1 · nullus mcp serve · #61
stack_liststack_statuscluster_list template_listcompat_checkstack_logs_tail stack_deploystack_rollbackpipeline_deploy
점선 3종은 --allow-write를 켰을 때만 나타난다. 시크릿은 도구 인자로 받지 않으며, Claude Code 등 외부 MCP 클라이언트가 그대로 연결된다
AI 어시스턴트 1단계 · #94
Upstage solar-pro4OpenAIAnthropic Gemini사내 서버 vLLM · Ollama
키는 관리 화면에서 조직별로 등록한다(끝 4자리만 표시, 감사 로그 기록). 사내 서버를 고르면 폐쇄망에서도 외부로 나가지 않는다
CLI는 최소 구성(version · stack ls · mcp serve)이다. MCP를 우선 제공하고, CLI 명령은 사용 피드백에 따라 확장한다

경보 알림 채널 연동Telegram·이메일·Slack

알림 채널 · #63
조직 알림 채널
관리 › 알림 채널에서 Telegram·이메일(SMTP)·Slack 채널을 등록하고 받을 이벤트를 고른다. 채널마다 테스트 전송을 지원하고, 모든 발송 결과를 기록한다
기존에는 설정이 저장만 되고 실제 발송되지 않았다
스택 심각 경보 · #87
규칙 설정 없이 기본 동작한다
스택 Prometheus 기본 규칙 145개의 critical 경보를 1분마다 수집해 조직 채널로 보낸다(발생, 4시간마다 재알림, 해제)
기존에는 경보 수신자가 비어 있어 어디에도 전달되지 않았다
리소스 폭주(Q4) 대응 방안의 "알리고 되돌린다" 단계에서 앱 리소스 경보(#102)도 이 채널을 사용한다

피드백 외 개선사용자 환경 대응

MinIO 라이선스 변경 대응 · #88
S3 호환 계층을 도입해 SeaweedFS를 선택할 수 있다
arm64 네이티브 · nullus#270
노드 아키텍처를 읽어 이미지를 고르고, 실행할 수 없으면 설치 전에 중단한다(DGX Spark에서 발견)
전자정부 표준프레임워크 · #91
외부 원본 저장소를 새 앱 저장소로 가져온다(eGov 부트·웹 샘플)
문서 · 재현성 · #93
문서 사이트를 한·영으로 제공하고, 로컬 E2E 가이드로 설치부터 백업·복구까지 같은 순서로 재현한다
CI/CD 템플릿 화면: eGovFrame Boot Sample(Spring Boot), eGovFrame Web Sample(JSP), Nullus Sample App Backend 카드
CI/CD 템플릿: eGovFrame 샘플 2종 (10/21 시연 화면)
검증 인프라도 OpenTofu + Kubespray로 재구축했다. 프로비저닝 결과로 Kubespray 인벤토리를 바로 생성한다

도입 사례위니텍 기술총괄실에서 쓰고 있다

반영 완료 2반영 대상 7

10월부터 위니텍 기술총괄실 IDP 가 같은 설치 · CI/CD 엔진으로 돌고 있다. 드러난 문제는 GitHub 이슈로 올려 처리하고, Nullus 에도 같은 수정을 옮겨 온다

#PoC 에서 드러난 문제Nullus상태
01GitLab root 비밀번호가 금고(OpenBao) 값과 달라 로그인되지 않음같은 문제 · nullus#309반영 완료
02설치 화면에서 고른 보안 도구(Trivy · SonarQube)가 설치 목록에서 빠짐먼저 수정 · nullus#288반영 완료
03Local 규모 프로파일에서 SonarQube 메모리가 512Mi 로 줄어 기동 실패같은 코드 · 캡처 #643반영 대상
04SonarQube 기본 품질 게이트가 '미검토 보안 항목'만으로 배포를 막음같은 코드 확인반영 대상
05GitLab 일시 장애에도 자동화 토큰을 재발급 · 폐기해 작업이 끊김같은 코드 확인반영 대상
06실행 한 번이 이력에 두 줄로 남아 실행 수 · 성공률이 부풀려짐같은 코드 확인반영 대상
07~09준비 검사가 포트만 확인 · /etc/hosts 한 줄 복사(Windows) · 접속 정보 '불러오는 중'같은 코드 확인반영 대상
실사용 환경이 찾은 9건 중 2건은 반영했고 7건은 같은 수정을 옮겨 온다. 엔진이 같아 수정도 그대로 이식된다
GitHub 이슈 목록: 위니텍 IDP 저장소, Open 52 · Closed 155, WBS 번호가 붙은 이슈들
GitHub 이슈 목록 · 셋째 줄 #643 = 표의 03클릭 — 크게열림 52 · 닫힘 155

로드맵연말 프로덕션 완성도 목표

2차에서 약속한 "연말까지 프로덕션에서 쓸 수 있는 완성도"를 위해 신규 기능 개발은 마감하고, 남은 두 달은 검증·안정화에 집중한다

v0.6.0
2026.10 · 현재
DevSecOps 기능 완료
보안 게이트 · 공급망 · 백업 / 복구 · 업그레이드
폐쇄망
2026.11
최신본 종단 검증
SAST 이후 에어갭 전체 · 백업 에어갭
프로덕션
2026.12
현업에서 쓸 완성도
리소스 폭주 1단계 · 보안 보강
확장
2027
MLOps · 에이전트
기구축 환경 연결 · 도구 조합 추천
2차에서 2027년으로 계획한 AI 기능 중 MCP·어시스턴트 1단계를 v0.6.0에 앞당겨 반영했다

MLOps 로드맵(안)기본 IDP 위에 켜서 쓰는 애드온

기본 · 지금 그대로
Nullus IDP
스택 · CI/CD · 관측 · 관리 — 메뉴 4그룹과 설치 엔진은 바꾸지 않는다
+
MLOps 애드온ON
켜는 조직만 쓴다
새 페이지로 더하고 평소엔 보이지 않는다. 학습 · 서빙 · 실험 추적
+
다음 애드온OFF
성격이 다른 영역
같은 방식으로 붙인다 — 한 통에 넣지 않는다
원칙 01
애드온으로 더한다
MLOps 플랫폼을 따로 만들지도, 기존 구조를 갈아엎지도 않는다. DevSecOps 파이프라인에 ML 워크로드를 선택 모듈로 연계한다
원칙 02
GPU 없는 영역부터
GPU 가 필요한 영역과 아닌 영역을 나누고, 필요 없는 영역부터 진행한다
원칙 03
실용 수준 검증 후 공개
단순 동작 확인 수준의 시연으로는 공개하지 않는다
단계 (안)내용GPU지금 가진 것
M0같은 파이프라인모델 서빙 앱을 CI/CD 템플릿으로 제공한다. 가벼운 모델로 시작해 모델만 교체하며, 아티팩트 저장 · 보안 게이트 · SBOM 은 기존 것을 그대로 쓴다불필요CI/CD 템플릿 · 외부 원본 가져오기
M1GPU 를 아는 게이트클러스터 등록 시 GPU 노드를 식별하고, 호환성 게이트가 GPU · 아키텍처 조합을 판정한다인식만arm64 사전검사 · 아키텍처별 이미지 출처
M2학습 · 서빙 스택학습 · 서빙 · 실험 추적 스택 템플릿과 CSP 레퍼런스 파이프라인 선택 — 애드온 페이지 안에서필요스택 템플릿 · 설치 엔진 · 호환성 매트릭스
2차 검증 Q2 · Q6(계획과 일정 · CSP 레퍼런스 파이프라인)에 대한 답. 드래프트 — 10/26 팀 회의: DevOps 와 MLOps 는 성격이 달라 한 구조에 맞추지 않는다, 기본은 IDP 이고 MLOps 는 옵션. 후보 OSS 는 검토 전이며 일정은 DevSecOps 연말 완성도 확보 후 팀 합의를 거쳐 공개한다

남은 과제이슈 번호로 추적하는 백로그

제품 신뢰성 · 연말까지
  • #99~#107 ★리소스 폭주 대응: 격리, 경보·롤백, 무거운 경로 분리. 1단계 연말까지(카드 9장)
  • #68 ★보안 보강: 자체 인프라 시크릿, BYOK, IdM 연동
  • #82 · #86 · #90에어갭 종단 검증: 설치 경로, 백업, SAST 이후 최신본
  • #60회귀 스위트: 둘러보기 기반 테스트 관리
확장
  • #62 ★기구축 환경 연결: 운영 중인 GitLab·Argo CD 등록, CSP 레퍼런스 파이프라인
  • #72 ★환경별 도구 조합 추천: 정적 가이드 → AI 추천
  • #94어시스턴트 다음 단계: 변경 도구, 에이전트
  • #74 ★UI/UX A/B 테스트
방향 · 거버넌스
  • #71 ★MLOps 로드맵: 앞 장의 드래프트
  • #96에이전트 중심 포지셔닝 검토
  • #95오픈소스 라이선스 · 컴플라이언스 점검
★ 2차 검증 피드백에서 나온 과제. 미완료 과제도 이슈 번호로 추적한다(기획 저장소 기준). 의견과 기여는 github.com/cloud-nullus/nullus 이슈로 받는다

에이전트 시대의 가드레일 층앱을 만드는 것과, 프로덕션으로 보내는 것은 다르다

사람
웹 화면
4그룹 메뉴진행 중 작업 알림
에이전트 · 모델교체 가능
MCP 클라이언트 · AI 어시스턴트
UpstageOpenAIAnthropicGemini사내 vLLM·Ollama
사용자 인증
MCP · 질문한 사용자의 인증
NULLUS · 가드레일 층남는 자산
권한에이전트도 사용자 권한까지만
판정호환성·보안 게이트, 서버가 다시 판정
되돌리기사전 점검, 자동 롤백, 복구
기록감사 로그, 시크릿은 엔진 안에만
검증된 조합 지식매트릭스 · 29단계 설치 엔진 · 템플릿. 에이전트는 의도를 말하고 실행은 엔진이 맡는다
검증된 조합만 설치·배포
인프라 · 벤더 중립고르는 것
어떤 쿠버네티스든온프레미스·폐쇄망·클라우드amd64·arm64GitLab·Gitea·GitHubJenkins·Actions·Argo CDHarbor·NexusS3 호환 스토리지
발전 가능성
지금 · v0.6.0
조회하고 설명하는 에이전트
MCP 조회 6종 · 변경 3종(옵트인), 어시스턴트 1단계, 사내 모델로 폐쇄망 지원
다음
사람이 승인하는 변경
사전 점검 결과와 함께 업그레이드·롤백을 제안하고 사람이 승인 #94 · 환경별 도구 조합 추천 #72
이후
운영 에이전트
경보 → 원인 요약 → 롤백 제안 #99~#107 · CVE 탐지에서 검증된 업그레이드까지 연결 · kagent 연계 검토
확장
AI 워크로드를 배포하는 플랫폼
모델 서빙·MCP 서버·에이전트 런타임을 같은 보안 게이트와 백업 아래로(MLOps M0~M2)
AI 로 앱 개발은 빨라졌지만 인증 · 인가, CI/CD, 떠받치는 OSS 의 버전 · 취약성 관리는 여전히 인프라 지식이 필요하다 — 그 계층을 Nullus 가 맡는다. 모델 · 에이전트 · 인프라 · 앱은 바꿔 끼우고, 검증된 OSS 조합의 파이프라인과 가드레일은 남는 중간 계층. 에이전트는 고치지 않고 제안하므로 GitOps 와 사람의 승인이 유지되고, 미해결 과제는 이슈로 남겨 계속 따라간다

시연 다시 보기설치부터 AI 어시스턴트까지 한 세션 · 챕터로 바로 재생

시연 영상 장면 처음부터 재생 · 9:37
로컬 E2E 가이드 1~17단계 · 실제 화면 · 기다리는 구간은 빨리 감기 (10/28 녹화)
0:00인트로표지 · 무엇을 보게 되는지
0:031 준비물도구 버전 · 자원 확인
0:182 플랫폼 띄우기up --kind · 점검
0:373 로그인Keycloak SSO · 클러스터 확인
0:534 스택 설치GitLab · Argo CD · SonarQube (⏩ 14분)
1:425 도구 접속GitLab · Argo CD · SonarQube
2:106 연결 설정MinIO · 백업 설정
2:307 템플릿Nullus Sample App
2:358 파이프라인생성 · 실행
2:589 결과 확인6단계 통과 · Argo CD · 지문
3:4210 백업전체 백업 · 검증
3:5711 삭제네임스페이스 삭제
4:1312 복구백업에서 복구
4:3413 다시 연결라우터 · refresh
4:5314 이어서 배포지문 일치 · 새 커밋
5:4815 전자정부 앱차단 → .trivyignore → 배포
7:4716 OSS 업그레이드번들 등록 · Argo CD 7.7.22
8:4817 AI 어시스턴트업스테이지 솔라 · MCP 조회 3문
9:32아웃트로감사합니다 · 저장소 QR
챕터를 누르면 그 장면부터 재생(같은 폴더의 mp4, 없으면 유튜브 새 탭) · 발표 중엔 건너뛰고 Q&A 에서 쓴다 · Esc 닫기

160개의 결정,
이제 제품이 처리합니다

DevSecOps 파이프라인 구축을, 클릭 몇 번으로

감사합니다. Q&A
CloudBro 커뮤니티 코어 프로젝트 · Apache 2.0 · v0.6.0 · nullus.io
github.com/cloud-nullus/nullus QR
github.com/cloud-nullus/nullus
영상 파일 nullus-e2e-demo-v6.mp4 이 이 HTML 과 같은 폴더에 없습니다. 파일을 두거나, 21장 · 마무리 장의 유튜브 링크로 여세요.
발표자 노트
목차 — 숫자키 · 클릭으로 이동 · Esc 닫기