블로그개발 도구9분 읽기

맥에서 리눅스 컨테이너 하나 켜려고 맨날 깔던 가상머신, 이제 안 깔아도 될지 모릅니다

Athas Capsule은 가상머신 없이 맥에서 리눅스 컨테이너를 띄우는 SDK인데, 아직 소스가 없어요.

맥에서 리눅스 컨테이너 하나 켜려고 맨날 깔던 가상머신, 이제 안 깔아도 될지 모릅니다 대표 이미지

Docker Desktop을 켜면 램을 4GB씩 뺏겼습니다. 프로그램 하나 돌리자고 컴퓨터 안에 컴퓨터를 한 대 더 세우는 꼴이었습니다.

개발자 @athasdev는 자기가 공개한 Athas Capsule이 그 한 겹을 걷어냈다고 말합니다. 애플이 macOS에 넣은 컨테이너화 계층(Apple Containerization) 위에서 가상머신 없이 바로 도는 SDK입니다. 사람들은 데모 영상을 담은 트윗을 24만 7천 번 봤고, 좋아요를 920개 눌렀습니다. 리포스트는 47번에 그쳤고요. 많이들 봤는데 퍼 나르지는 않았습니다.

Capsule 앱 데모 화면, ubuntu, desktop, alpine 워크스페이스가 나란히 돌고 있습니다

애플 컨테이너화의 첫 실전 구현

컨테이너는 운영체제를 나눠 쓰니까 가볍고, 가상머신은 운영체제를 통째로 흉내 내느라 무겁습니다. 맥은 리눅스 컨테이너를 직접 실행하지 못해요. 도구들은 일을 두 번 합니다. 리눅스 가상머신을 먼저 띄우고, 그 위에 컨테이너를 얹죠.

Docker Desktop, OrbStack, colima, Podman. 맥용 도구는 이름만 다르고 작동 방식은 하나입니다. 램과 CPU를 한 몫 떼어 주고, 컨테이너를 켤 때마다 가상머신 부팅을 기다립니다.

애플은 계층을 두 갈래로 깔아 왔습니다. 하나는 가상화 프레임워크(Apple Virtualization)예요. 도구들이 가상머신을 효율적으로 돌릴 때 수년째 쓰던 공식 계층입니다. 다른 하나가 이번에 주인공으로 나온 컨테이너화(Apple Containerization)죠.

제작자 설명으로는 macOS에서 컨테이너를 만들고 관리하는 일을 맡는다고 해요. 그동안 개발자들은 맥에서 리눅스를 돌릴 때 가상머신을 썼습니다. UTM, Lima, Multipass. 전부 같은 계열이죠. Athas Capsule은 가상머신을 뺀 실행 경로를 앞세운 첫 제품에 가깝습니다.

Athas Capsule은 두 가지를 바꿨습니다. 하나는 가상머신 없이 macOS 자원을 바로 쓰는 실행 경로, 다른 하나는 SDK(개발 키트)라는 형태예요. SDK니까 다른 도구들이 자기 기능 안에 컨테이너 실행을 심을 수 있어요. 기존 도구가 손님 받는 가게라면, Athas Capsule은 그 주방에 들어가는 설비에 가깝죠.

Apple Silicon 맥이 개발자 기본 장비가 되면서 맥에서 리눅스를 돌리려는 개발자가 늘었습니다. 애플이 공식 실행 계층을 열어 줬다면, 그 위에 제품을 얹는 사람이 나오는 건 순서대로예요. 개발자들이 맥에서 리눅스를 돌릴 때 가상머신 대신 운영체제 안쪽 계층을 기본으로 쓰게 될 수도 있습니다.

@athasdev가 밝힌 기능은 네 가지입니다

알파인·우분투, XFCE 데스크톱, 자원 제어, 내보내기·가져오기.

알파인과 우분투를 올립니다.

알파인은 용량을 극단적으로 줄인 초경량 리눅스입니다. 우분투는 가장 널리 쓰이는 범용 리눅스예요. 가벼운 실행과 익숙한 환경, 둘 다 잡겠다고 고른 조합이죠. 맥에서 서버 작업을 돌리는 개발자가 가장 많이 찾는 짝이기도 합니다.

XFCE 데스크톱까지 지원합니다.

컨테이너는 보통 화면 없이 뒤에서 도는 작업을 맡습니다. 데스크톱 환경은 가상머신 쪽 일이에요. 둘을 한 도구에서 같이 다루겠다는 설계로 보입니다. 개발용 컨테이너와 화면이 필요한 테스트 환경을 한곳에 묶는 그림이죠.

자원 제어와 로그, 내보내기·가져오기를 넣었습니다.

CPU와 메모리 사용량을 제한하고, 실행 기록을 보고, 이미지를 파일로 저장하거나 되살리는 기능입니다. 저는 내보내기·가져오기를 특히 눈여겨봤어요. 만들어 둔 컨테이너를 파일 하나로 떠서 다른 맥으로 옮기거나 백업해 둘 수 있으니까요. 실서비스처럼 관리하겠다는 신호죠.

코어는 Zig로 짰습니다.

Zig는 중간 계층 없이 기계어로 컴파일되는 시스템 프로그래밍 언어예요. 런타임을 가볍게 만들기 좋습니다. Bun(자바스크립트 실행 도구)과 Ghostty(터미널 앱)처럼 성능을 앞세운 도구들이 골라 온 언어이기도 하죠. 메모리를 손으로 관리하면서도 실수를 잡아 주는 검사가 붙어 있고, C 코드와 바로 섞어 씁니다.

가상머신을 걷어냈는데 SDK가 무거우면 남는 게 없겠죠. @athasdev가 트윗 첫 줄에 네이티브 SDK를 놓은 것도 같은 맥락입니다. Athas Capsule은 명령줄 도구나 앱과 달리, 코드에서 직접 불러 쓰는 라이브러리예요. 스위프트나 C처럼 중간 계층 없는 언어에서 바로 연결해 쓸 수 있습니다.

지금은 도구 셋이 맥 컨테이너 시장을 나눠 갖고 있습니다

Docker Desktop과 OrbStack이 양분해 왔고, colima가 무료 오픈소스 대안으로 버텼습니다. Docker Desktop은 중소 규모를 넘어서는 조직에 유료 구독을 요구해 왔어요. OrbStack은 가상머신 기반이면서도 네이티브처럼 빠르다는 평판을 얻었죠.

셋 다 가상머신이라는 비용을 안고 갑니다. M시리즈 맥에서도 컨테이너 몇 개만 띄우면 램을 몇 기가씩 뺏기는 일이 흔했어요. 네이티브 실행 계층이 여물면 개발자는 그 비용을 덜 냅니다. 부팅 대기와 메모리를 줄이고, macOS 기능을 더 깊이 쓸 수 있어요.

도구 회사들은 저마다 다른 걸 잃습니다. Docker는 라이선스 수익을 걸고 있고, OrbStack은 빠르다는 차별점을 잃을 수 있어요. colima 같은 무료 진영은 애플 공식 계층을 받아들이면 유지보수 부담을 오히려 덜죠.

체감하는 사람은 생각보다 많습니다. VS Code 개발 컨테이너(devcontainer, 프로젝트마다 환경을 묶어 두는 방식)를 쓰는 팀은 프로젝트를 열 때마다 부팅을 기다려요. 파이썬 가상환경 대신 컨테이너로 라이브러리를 나눠 쓰는 개발자도, 로컬에 데이터베이스를 띄워 테스트하는 개발자도 마찬가지죠. 로컬에서 CI를 돌릴 때 대기 시간을 없앨 수 있는 것도 커요.

AI 쪽은 더합니다. 모델과 의존성 버전이 서로 엉키는 일이 잦아서, 개발자들이 프로젝트마다 환경을 따로 두고 있어요.

SDK로 나왔으니 다른 제작자에게도 문을 하나 더 연 셈이에요. IDE와 CI 실행기, 개발 환경 관리 도구가 자기 제품 안에 컨테이너 실행을 심을 수 있으니까요. 도구 제작자는 리눅스 가상머신 관리 코드를 통째로 걷어냅니다.

Athas Capsule 쪽에서 Docker 호환 계층까지 얹으면 얘기가 더 커져요. 기존 이미지를 그대로 쓰면서 가상머신만 빼는 그림이 되거든요. 개발자는 맥에서 리눅스 도구를 더 싸게 돌리고, 더 많은 선택지에서 고를 수 있어요.

지금 확인할 수 있는 자료는 트윗 한 건뿐입니다

공식 문서도, 소스 저장소도, 가격도, 라이선스도 아직 없습니다. 사용법 문서와 예제 코드, 오류 대응 가이드도 마찬가지예요. 쓰려는 개발자는 소스를 직접 읽어야 하는데, 그 소스부터 안 열려 있죠.

실제로 쓸지 정할 항목이 전부 비어 있습니다. Docker 이미지를 그대로 가져오는지, 개방형 이미지 규격(OCI)을 따르는지. 네트워크와 볼륨(파일 공유)은 어떻게 도는지, macOS 몇 버전부터 받는지.

x86용 리눅스 이미지를 돌리는지도 알 수 없어요. 지금 도구들은 에뮬레이션으로 버티는데, 네이티브 계층이 어디까지 받아 주는지 아무도 모릅니다. 현장에서 도구를 고를 때 맨 먼저 보는 기준인데 전부 미확인이죠.

성능 숫자도 없습니다. 부팅 시간, 메모리 사용량, CPU 오버헤드를 알아야 기존 도구와 견줄 수 있어요. 가볍다는 말을 확인할 방법이 지금은 없어요.

트윗만으로는 누가 만드는지도 알 수 없습니다. 개인인지 팀인지, 유지보수를 얼마나 오래 끌고 갈지 모르죠. 격리 수준을 검증한 결과도 아직 공개된 게 없어요. 애플이 직접 만든 계층이라 macOS 보안 모델과 잘 맞을 여지는 있습니다. 여지는 여지일 뿐이고요.

Docker 생태계가 10년 넘게 모아 온 이미지와 설정 호환성이 진짜 자산입니다. 실행 계층이 아무리 빨라도 호환성을 못 넘으면 개발자들은 금방 돌아와요. 애플 프레임워크 자체의 제약은 SDK가 우회하지 못하는 부분이고요.

지금 쓰는 도구가 못 견딜 만큼 느린 것도 아닙니다. OrbStack은 이미 충분히 빠르고, colima는 공짜죠. 전환하려면 비용을 치러야 합니다. 팀 단위로 Docker 기반 설정을 쓰고, 배포 파이프라인도 전부 Docker에 맞춰 짰어요. 로컬 실행 계층만 바꾼다고 끝나지 않습니다.

애플 쪽 위험도 있어요. 컨테이너화 접속 통로를 어디까지 키울지, 외부 도구가 기대는 부분을 손댈지는 애플이 정해요. 플랫폼에 깊이 기댈수록 SDK 수명은 애플 정책을 따라갑니다.

어떤 팀이 무슨 작업을 Athas Capsule 위에서 돌렸는지, 공개된 기록도 없습니다. 데모 영상과 스펙 네 줄로 안정성을 가늠하기는 어렵죠.

그럼 지금 갈아타야 할까요? 아닙니다. 지켜볼 때예요.

저장소가 열리면 세 가지부터 봅니다

호환성부터 확인합니다.

Docker 이미지를 그대로 받는지 보면 쓸지 말지가 거의 정해집니다. 소스 저장소가 열리면 맨 먼저 볼 항목이에요.

실행 계층이 얼마나 여물었는지 봅니다.

애플 프레임워크 자체가 아직 어립니다. 안정성은 프레임워크 성숙도와 묶어서 판단해야 해요.

얼마나 오래 갈지 따집니다.

개인이나 소규모 프로젝트는 방향이 꺾이면 그대로 멈춥니다. 라이선스와 유지보수 계획이 보일 때까지는 데모로 보는 게 안전하죠.

첫 테스트는 세 단계면 충분해요. Docker 이미지를 그대로 띄워 보고, 같은 작업에서 램 사용량을 Docker Desktop과 견주고, 부팅 시간을 확인합니다. 세 숫자가 다 좋으면 그때 진지하게 들여다봐도 늦지 않습니다.

한 가지 더 봐야 합니다. 컨테이너가 맥 쪽 파일과 설정을 건드리는 범위요. 범위가 넓으면 아무리 빨라도 못 씁니다.

지금 Athas Capsule을 볼 사람은 둘입니다. 새 실행 계층을 일찍 만져보려는 개발자, 자기 도구에 컨테이너 기능을 심으려는 제작자. 그 밖이라면 누군가 호환성과 안정성을 확인해 줄 때까지 기다려도 늦지 않아요.

가상머신 우회가 맥 개발 환경의 다음 단계라면, Athas Capsule은 그 방향의 첫 신호입니다. 갈아탈 시점은 호환성 결과를 보고 정하면 됩니다.

참고

FAQ

자주 묻는 질문

기존 맥 컨테이너 도구와 Athas Capsule은 무엇이 다른가요?
Docker Desktop, OrbStack 같은 기존 도구는 리눅스 가상머신을 먼저 띄우고 그 위에 컨테이너를 얹는 이중 구조입니다. Athas Capsule은 애플의 공식 컨테이너화 계층 위에서 가상머신 없이 컨테이너를 바로 돌립니다.
트윗에서 공개된 기능은 무엇인가요?
알파인·우분투 실행, XFCE 데스크톱 지원, 자원 제어와 로그, 내보내기·가져오기입니다. 코어는 Zig로 짰다고 밝혔습니다.
지금 당장 갈아타도 되나요?
아직 아닙니다. 개발자가 공식 문서·소스 저장소·가격·라이선스를 전부 공개하지 않았고, Docker 이미지 호환 여부나 성능 수치도 아직 확인할 수 없어요. 소스를 공개하면 호환성부터 확인해 보세요.
원고, 봉투, 책자가 오렌지 리본 하나로 이어진 모습

SEASON 3

시즌3 「콘텐츠로 팔기」

AI와 콘텐츠를 만들고 고객에게 연결하는 4주

제가 에이전트로 조사하고 쓰고 파는 과정을 그대로 보여 드려요. 그다음 각자의 주제로 같이 만들어 봐요.

10월 2일 OT · 10월 5일부터 월·수 4주 · 10월 31일 오프라인

시즌3 커리큘럼 보기