# Kernel - 브라우저 자동화를 위한 서버리스 플랫폼

> Clean Markdown view of GeekNews topic #22275. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=22275](https://news.hada.io/topic?id=22275)
- GeekNews Markdown: [https://news.hada.io/topic/22275.md](https://news.hada.io/topic/22275.md)
- Type: news
- Author: [neo](https://news.hada.io/@neo)
- Published: 2025-08-01T09:51:02+09:00
- Updated: 2025-08-01T09:51:02+09:00
- Original source: [github.com/onkernel](https://github.com/onkernel/kernel-images)
- Points: 24
- Comments: 2

## Summary

브라우저 자동화에 특화된 **Kernel 서버리스 플랫폼**은 별도의 인프라 구축 없이 개발자가 작성한 코드를 즉시 배포·확장할 수 있도록 지원합니다. **샌드박스 Chrome 브라우저**와 **CDP(WebSocket) 연동**을 바탕으로, Playwright와 Puppeteer 등과의 통합, 실시간 **원격 GUI 모니터링** 및 제어, 그리고 **격리된 VM 환경에서 안전하게 실행**되는 점이 특징입니다. **Unikraft unikernel** 및 **Docker 이미지 지원**을 통해 초고속 브라우저 재시작, 스냅샷 복원, 리소스 최소화 등 효율적인 자원 활용과 높은 확장성을 보장합니다. 모든 자동화 에이전트가 **API 형태로 자동 변환**되어 배포 즉시 외부 시스템에서 호출할 수 있어, 브라우저 작업의 클라우드화·자동화를 혁신적으로 단순화합니다. 다 좋은데 이름을 왜 이렇게 지었는지 모르겠네요.

## Topic Body

- **Kernel**은 개발자가 **브라우저 자동화** 코드를 별도 인프라 고민 없이 바로 배포하고, 대규모로 확장할 수 있게 해주는 **서버리스 플랫폼**  
- 설정이나 파이프라인 구축 없이, **로컬 개발과 거의 동일한 속도**로 코드를 배포하고 실행할 수 있음  
- 샌드박스 환경에서 사용할 수 있는 **Chrome 브라우저**를 제공하며, 작성한 **에이전트를 자동으로 API로 변환**, 어디서든 호출 가능  
- Playwright, Puppeteer 등 **Chrome DevTools Protocol 기반 프레임워크**와의 연동을 지원하며, **원격 GUI(라이브 뷰)** 로 실시간 모니터링 및 제어가 가능함  
- Unikraft unikernel 환경 지원으로 **초고속 재시작, 스냅샷 복원, 리소스 최소화** 등 고성능 특화 기능 제공  
- **Docker 이미지** 및 **Unikraft unikernel** 두 가지 배포 방식을 지원, 다양한 클라우드/컨테이너 환경에서 활용 가능함  
- 모든 코드는 **격리된 가상 머신**에서 안전하게 실행되며, 실시간 관찰 및 디버깅 도구 제공  
  
---  
  
### What's Kernel?  
  
- **Kernel**은 샌드박스된, 바로 사용할 수 있는 **Chrome 브라우저 환경**을 제공하며, 이 저장소는 [Kernel의 호스팅 서비스](https://docs.onkernel.com/introduction)를 위한 기반 코드임  
- Playwright, Puppeteer 등 **Chrome DevTools 기반 브라우저 프레임워크**에서 쉽게 연결 가능  
  
### Why use Kernel?  
  
- **로컬에서 프로덕션까지 수 초 내 배포**  
  - 별도의 설정이나 프로덕션 파이프라인 없이, `bun run dev`와 거의 같은 시간에 코드 배포 및 실행 가능  
- **모든 에이전트를 API로 전환**  
  - 플랫폼에 올린 모든 에이전트가 자동으로 API로 노출되어, 외부에서 호출 가능  
- **병렬 확장성**  
  - 수천 개 브라우저 인스턴스를 필요할 때마다 즉시 실행 및 확장 가능  
- **격리 및 관찰성 강화**  
  - 코드가 격리된 VM에서 실행되어 보안성 높고, 모니터링 및 디버깅 도구 제공  
- **예측 가능한 간단한 요금제**  
  - 사전 인프라 정의 없이, 사용한 리소스만큼만 비용 발생  
  
### 주요 기능  
  
- **통합 브라우저 환경** : 클라우드 상에서 브라우저를 즉시 생성·제어, 워크로드 자동화에 최적화  
- **샌드박스 Chrome 브라우저**를 DevTools 기반 자동화 프레임워크에서 연결 사용 가능  
  - **9222 포트**를 통해 Playwright, Puppeteer 등과 연동  
  - CDP WebSocket 엔드포인트 획득 후 원격 클라이언트에서 연결  
  - 연결 해제/재연결 가능  
- **세션 상태 유지** : 쿠키, 인증 토큰, 히스토리 등 브라우저 세션을 호출 간에도 지속 관리  
- **초고속 재시작(standby mode)** : 브라우저 인스턴스를 20ms 이하로 즉시 재시작  
- **원격 GUI(라이브 뷰 스트리밍)** 로 브라우저 화면을 실시간으로 확인 및 제어 가능함  
  - **noVNC**: VNC 기반, 읽기/쓰기 지원, WebRTC 비활성화 필요  
  - **WebRTC**: 실시간, 읽기/쓰기, 창 크기 조정, 복사/붙여넣기, 고속 성능, ENABLE_WEBRTC=true 필요  
  - 오디오 스트리밍은 미지원, 읽기 전용 모드는 환경 변수로 설정 가능  
- **브라우저 세션 비디오 리플레이** : 과거 세션을 다시 보며 디버깅 및 분석 가능 (지원예정)  
  
### 구현 및 배포  
- ## Docker 컨테이너 사용  
  - headful Chromium을 **Docker 컨테이너**에서 실행 가능  
  - `cd images/chromium-headful` 후, 빌드 및 실행 스크립트 제공  
  - 환경변수로 WebRTC 활성화 및 기타 설정 가능  
- ## Unikraft Unikernel 사용  
  - Unikraft unikernel 기반 실행 시, Docker 기반보다 **더 빠른 시작 및 절전 모드** 제공  
  - 네트워크 트래픽이 없으면 자동으로 standby 모드 진입, 상태 스냅샷/복원 지원  
  - **Cold start 20ms 미만**, 세션 상태(쿠키, 파일, 브라우저 설정 등) 유지 및 복원 가능  
  - 8GB 이상의 메모리 필요  
- ## 배포 시 참고사항  
  - WebRTC 기반 스트리밍 활성화 시 TURN 서버 필요  
  - unikernel 배포 시 공개 URL이 발급되어 누구나 접근 가능하므로 **민감 작업에 사용 금지**, 사용 후 인스턴스 삭제 필요

## Comments



### Comment 42016

- Author: cocofather
- Created: 2025-08-01T20:43:21+09:00
- Points: 1

커널을 이기고 구글 1페이지에 나올 자신이 있나봅니다.

### Comment 42014

- Author: iolothebard
- Created: 2025-08-01T19:31:25+09:00
- Points: 2

이름 이름부터 글러먹었…
