휴대폰, 태블릿, 2in1/PC에서 Alpine 셸을 갖춘 완전한 arm64 Linux 환경을 실행하는 HarmonyOS 앱입니다.
leaningtech/webvm
CheerpX로 x86 코드를 WebAssembly에서 실행해 브라우저 안에서 작동하는 Linux 가상 머신입니다.
- 스타
- 17,441
- 포크
- 3,339
- 열린 이슈
- 12
- 마지막 커밋
- 14일 전
어떤 프로젝트인가요?
WebVM은 HTML5와 WebAssembly를 사용해 전적으로 클라이언트 측에서 실행되는 서버리스 Linux 가상 환경입니다. Linux ABI와 호환되도록 설계되었으며, 수정하지 않은 Debian 배포판과 다양한 네이티브 개발 도구 체인을 브라우저 탭에서 바로 실행합니다.
가상 머신은 x86-to-WebAssembly JIT 컴파일러, 가상 블록 기반 파일 시스템, Linux syscall 에뮬레이터, 샌드박스 처리된 클라이언트 측 실행 환경을 제공하는 CheerpX 엔진으로 구동됩니다. 웹 인터페이스는 터미널 에뮬레이터로 xterm.js를 사용합니다.
이 저장소에는 webvm.io의 소스가 있으며, GitHub Pages로 포크해 배포하거나 Dockerfile에서 맞춤형 ext2 디스크 이미지를 빌드할 수 있습니다. 선택적으로 exit node와 자체 호스팅 Headscale 제어 서버를 사용할 수 있는 Tailscale 네트워킹도 지원하며, Claude AI 통합 패널도 제공합니다.
핵심 기능
- 01x86 코드를 WebAssembly로 변환해 수정하지 않은 Debian 배포판을 브라우저에서 실행합니다.
- 02가상 블록 기반 파일 시스템과 Linux syscall 에뮬레이션을 제공합니다.
- 03exit node와 Headscale를 지원하는 Tailscale 네트워킹을 통합합니다.
- 04Dockerfile에서 맞춤형 ext2 디스크 이미지를 빌드하고 GitHub Pages에 배포할 수 있습니다.
- 05브라우저에 API 키를 로컬로 저장하는 Claude AI 통합 패널을 제공합니다.
활용 사례
- 로컬에 아무것도 설치하지 않고 Linux 셸이나 개발 도구 체인을 사용해 볼 수 있습니다.
- 맞춤형 Dockerfile로 Python 환경 같은 브라우저 기반 REPL을 만들 수 있습니다.
- 정적 사이트에서 대화형 Linux 데모나 튜토리얼 환경을 호스팅할 수 있습니다.
- 격리된 샌드박스에서 CTF 과제를 실험할 수 있습니다.
빠른 시작
- 1
저장소를 클론합니다
git clone https://github.com/leaningtech/webvm.git - 2
종속 항목을 설치합니다
npm install - 3
프로젝트를 빌드합니다
npm run build - 4
디스크 이미지를 custom-disk-images/에 배치한 다음 Nginx를 시작하고 http://127.0.0.1:8081에서 WebVM을 엽니다
nginx -p . -c nginx.conf
사용 전 알아둘 점
- 공개 CheerpX 배포는 개인 사용 및 탐색 목적으로만 무료입니다. 조직은 상용 라이선스가 필요합니다.
- ICMP ping과 같은 일부 저수준 네트워킹 기능은 VM 내에서 사용할 수 없습니다.
- 사용자는 기본적으로 root 권한을 가지며 sudo는 설치되어 있지 않습니다.
토픽
자주 묻는 질문
- webvm은(는) 무엇인가요?
- CheerpX로 x86 코드를 WebAssembly에서 실행해 브라우저 안에서 작동하는 Linux 가상 머신입니다. WebVM은 HTML5와 WebAssembly를 사용해 전적으로 클라이언트 측에서 실행되는 서버리스 Linux 가상 환경입니다. Linux ABI와 호환되도록 설계되었으며, 수정하지 않은 Debian 배포판과 다양한 네이티브 개발 도구 체인을 브라우저 탭에서 바로 실행합니다.
- webvm은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- webvm은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- webvm은(는) 아직 유지보수되고 있나요?
- 활발히 유지보수 중. webvm의 마지막 커밋은 2026년 10월 7일입니다.
- webvm은(는) 어디에 사용할 수 있나요?
- 로컬에 아무것도 설치하지 않고 Linux 셸이나 개발 도구 체인을 사용해 볼 수 있습니다. 맞춤형 Dockerfile로 Python 환경 같은 브라우저 기반 REPL을 만들 수 있습니다. 정적 사이트에서 대화형 Linux 데모나 튜토리얼 환경을 호스팅할 수 있습니다. 격리된 샌드박스에서 CTF 과제를 실험할 수 있습니다.
- webvm는 어떻게 설치하나요?
- 저장소를 클론합니다: git clone https://github.com/leaningtech/webvm.git 종속 항목을 설치합니다: npm install 프로젝트를 빌드합니다: npm run build 디스크 이미지를 custom-disk-images/에 배치한 다음 Nginx를 시작하고 http://127.0.0.1:8081에서 WebVM을 엽니다: nginx -p . -c nginx.conf
- webvm은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/leaningtech/webvm
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
Warp는 내장 코딩 에이전트나 직접 선택한 CLI 에이전트를 지원하는, 터미널 기반의 에이전트형 개발 환경입니다.
Termux는 휴대폰에 설치 가능한 패키지를 제공하고 셸을 실행하는 Android 터미널 앱이자 Linux 환경입니다.
플랫폼 네이티브 UI와 GPU 렌더링을 지원하는 빠르고 기능이 풍부한 터미널 에뮬레이터로, 터미널 임베딩용 libghostty 라이브러리도 제공합니다.
BYOK와 로컬 모델, 끊김 없이 유지되는 SSH 세션, 인라인 파일 미리보기를 지원하는 macOS·Linux·Windows용 오픈 소스 AI 통합 터미널입니다.
Linux에서 수신 대기 중인 포트를 확인하고 해당 프로세스를 살펴보거나 종료하는 터미널 UI