Apple이 맥용 WSL을 만들었습니다 (컨테이너 머신)
원제 · Apple Just Built WSL for the Mac (Container Machines)
핵심 요약
애플의 컨테이너 머신은 macOS에서 리눅스 환경을 네이티브하게 구현하는 가벼운 VM 솔루션으로, 격리된 가상화 환경을 제공하지만 메모리 관리 및 보안 정책 측면에서 기존 서드파티 도구와 차별화된다.
하이라이트
애플은 macOS에서 OCI 호환 이미지를 실행하는 가벼운 리눅스 환경인 '컨테이너 머신(Container Machines)'을 출시했다.
각 컨테이너는 애플 가상화 프레임워크를 통해 독립적인 가상 머신(VM)에서 실행되어 VM 수준의 격리성과 보안을 제공한다.
기본 설정 시 Mac 시스템 메모리의 절반을 사용하며, 컨테이너 머신을 재시작하기 전까지 점유된 메모리를 macOS에 반환하지 않는다.
기본적으로 Mac의 전체 홈 디렉토리가 읽기-쓰기 권한으로 마운트되어 리눅스 환경에서 Mac 파일에 직접 접근할 수 있다.
실제 SystemD 실행을 지원하여 배포 환경과 동일한 서비스 스택 테스트가 가능하다.
타임라인
컨테이너 머신 개념 및 설정
애플 실리콘에 최적화된 이 기능은 도커와 유사한 방식으로 동작하며, OCI 호환 이미지를 사용하여 시스템 초기화 프로세스가 포함된 VM을 구성한다. 설정 과정은 매우 간소화되어 있어, 이미지 빌드 후 'container machine create' 명령어를 실행하면 즉시 환경 구축이 완료된다.
- 컨테이너 머신은 OCI 호환 이미지를 사용하여 가벼운 리눅스 환경을 생성한다.
- macOS 26 이상 환경에서 별도의 패키지 설치를 통해 즉시 사용할 수 있다.
- 명령어 한 번으로 시스템 초기화 프로그램을 포함한 VM을 수 초 내에 생성 가능하다.
파일 공유 및 개발 워크플로우
Mac과 리눅스 환경 간의 파일 시스템 공유는 별도의 파일 전송 없이 개발 및 테스트를 가능하게 한다. 리눅스 전용 개발 도구 테스트를 위해 맥에서 소스 파일을 수정하면 리눅스 환경에서 즉각 반영되며, 여러 개의 배포판 머신을 병렬로 운용하여 복합적인 서버 환경을 구축할 수 있다.
- Mac 홈 디렉토리가 읽기-쓰기 권한으로 컨테이너에 자동 마운트된다.
- 교차 타겟 작업을 위해 여러 리눅스 배포판 머신을 동시에 실행할 수 있다.
- 실제 SystemD 서비스를 실행하여 배포 환경과 동일한 테스트를 수행할 수 있다.
성능 벤치마크 및 기술적 차별점
도커 데스크톱과 달리 컨테이너마다 가상화 프레임워크 기반의 VM을 할당하여 격리 수준을 높였다. 벤치마크 결과, 메모리 처리와 단일 스레드 성능에서 강점을 나타내지만, 초기 구동 시간은 0.25초 수준인 타 솔루션에 비해 다소 개선이 필요한 상태다.
- 각 컨테이너가 개별 VM을 가지는 구조로 보안성과 프라이버시가 향상된다.
- 단일 스레드 CPU 성능에서 타 도구 대비 우수한 벤치마크 결과를 기록했다.
- 메모리 처리량에서 도커 데스크톱 및 OrbStack보다 앞선 수치를 보인다.
단점 및 사용 고려 사항
동적 메모리 할당을 지원하는 OrbStack과 달리 메모리 점유 방식이 정적이어서 대규모 빌드 시 리소스 효율이 낮을 수 있다. 또한 GUI 앱 실행의 복잡성과 보안상 이유로 홈 디렉토리 마운트 권한을 조정해야 하는 등 상업적 활용 시 고려해야 할 기술적 제약들이 존재한다.
- 기본 할당된 메모리를 재시작 전까지 macOS로 반환하지 않는 리소스 관리 문제가 있다.
- 현재 GPU 및 USB 패스스루 기능이 지원되지 않는다.
- 홈 디렉토리의 기본 읽기-쓰기 권한 마운트로 인해 보안 설정 확인이 필요하다.
설명
Apple Container Machines are a new feature that gives you lightweight, persistent Linux environments on your Mac, built on top of last year's Apple Container project and optimized for Apple Silicon. 🔗 Relevant Links GitHub: https://github.com/apple/container/blob/main/docs/container-machine.md Apple: https://developer.apple.com/videos/play/wwdc2026/389/ RepoFlow benchmarks: https://www.repoflow.io/blog/apple-containers-vs-docker-desktop-vs-orbstack ❤️ More about us Radically better observability stack: https://betterstack.com/ Written tutorials: https://betterstack.com/community/ Example projects: https://github.com/BetterStackHQ 📱 Socials Twitter: https://twitter.com/betterstackhq Instagram: https://www.instagram.com/betterstackhq/ TikTok: https://www.tiktok.com/@betterstack LinkedIn: https://www.linkedin.com/company/betterstack 📌 Chapters: 0:00 - Intro (WSL for Mac) 0:29 - Creating a Container Machine 1:48 - Inside Linux 2:09 - Home Directory Sharing 2:42 - Develop on Mac, Test on Linux 3:56 - Multiple Distros & systemd 4:28 - Design Principles 4:48 - How It's Built 5:40 - Benchmarks vs Docker & OrbStack 6:27 - The Catches 7:32 - Final Verdict
