맥북에서 도커 데스크탑 리소스 병목 잡는 법
22 de junho de 2026
0
컴퓨터/소프트웨어Related Video
8:07Apple이 맥용 WSL을 만들었습니다 (컨테이너 머신)
Better Stack
Comments (0)
Log in to leave a comment
No posts yet
8:07Better Stack
Log in to leave a comment
No posts yet
도커 데스크탑은 실행되는 순간 물리 메모리의 절반을 낚아챕니다. 가상화 프레임워크 오류로 컨테이너를 꺼도 메모리는 돌아오지 않습니다. 맥 커널이 디스크 스왑을 시작하면 Apple Silicon이라도 I/O 병목을 피할 수 없습니다. JVM 기반 앱을 돌릴 때 컨테이너가 이유 없이 죽는 Exit Code 137 현상은 힙 사이즈만 조정해서는 해결되지 않습니다.
서비스별 메모리 제한 값을 수동으로 계산해 넣으십시오. 전체 한계치 는 다음 공식으로 구합니다.
아래 스크립트로 환경변수를 제어하면 로컬 서비스 다운타임을 막을 수 있습니다.
sysctl -n hw.memsize로 맥의 총 RAM 용량을 확인합니다..env 파일에 BACKEND_MEM_LIMIT=1536M처럼 할당 값을 자동 주입합니다.macOS APFS와 리눅스 컨테이너의 권한 불일치는 빌드 오류의 원인입니다. DDEV 벤치마크에 따르면, 기존 gRPC FUSE 대신 VirtioFS를 적용하고 Colima 환경에서 Mutagen 동기화를 병행할 때 Drupal 설치 속도가 102초에서 27초로 73% 단축됩니다.
성능 병목을 줄이려면 다음 설정을 적용하십시오.
sudo diskutil apfs changeOwnerSharing /Volumes/ExternalSSD-Dev enable 명령으로 권한 구조를 무시합니다.docker-compose.yml 파일의 develop.watch.sync 규칙에서 node_modules 같은 무거운 경로는 동기화 대상에서 제외합니다.--mount-inotify 옵션을 추가해 FSEvents 신호를 리눅스 커널에 맞춥니다.이 구성을 마치면 코드 수정 시 발생하는 지연 시간이 95% 수준의 물리 디바이스 속도로 회복됩니다.
여러 가상화 런타임을 섞어 쓰면 도커 소켓 경로가 꼬입니다. 애플 컨테이너 프레임워크는 마이크로 VM을 독립적으로 구성하므로 네트워크 관리가 까다롭습니다.
포트 충돌을 막으려면 네트워크 자동 보정 스크립트를 사용하십시오.
lsof -i -P -n 명령으로 8080이나 5432처럼 현재 사용 중인 포트를 찾습니다..env에 갱신하고 컨테이너를 구동합니다.컨테이너가 지워지면 데이터베이스 파일도 함께 사라집니다. /Volumes/ExternalSSD-Dev/DockerData/volumes/pg_data_core/처럼 물리 디스크의 특정 경로에 볼륨을 바인딩해 두십시오.
데이터 복구 탄력성을 갖추려면 다음 단계가 필요합니다.
docker compose exec 명령으로 PostgreSQL 데이터를 스트리밍 덤프하고 gzip으로 압축 저장합니다.gunzip -c로 압축 파일을 컨테이너에 직접 주입합니다.read 옵션을 넣어 복구 실행 전 승인 절차를 강제합니다.이 방식을 쓰면 잘못된 테스트 데이터가 들어와도 5초 안에 정상 상태로 돌아올 수 있습니다.