일반

Mac mini M4로 개발 서버 구축하기 – 24시간 운영 가이드

Mac mini M4를 24시간 개발 서버로 3개월간 운영한 실전 가이드. 초기 설정, Docker 환경, 외부 접속, 모니터링까지 정리했습니다.

·4 min read
#일반

Mac mini를 서버로? 진지합니다

Mac mini M4를 개발 서버로 쓴 지 3개월째입니다. 처음엔 "Mac을 서버로?"라는 반응이 많았는데, 실제로 돌려보니 이게 가성비 끝판왕이더군요. 저전력에 발열도 적고, ARM 기반이라 Docker 이미지 호환성만 주의하면 리눅스 서버 못지않게 활용할 수 있습니다.

내 구성

  • Mac mini M4 (16GB RAM, 256GB SSD)

  • 외장 SSD 1TB (Samsung T7, 데이터 저장용)

  • UPS (APC BE425M, 정전 대비)

  • 이더넷 연결 (Wi-Fi보다 안정적)

RAM은 16GB로도 개발 서버 용도로는 충분합니다. Docker 컨테이너 5-6개 동시 운영하는데 메모리 부족을 느낀 적은 없습니다.

초기 설정 – macOS를 서버 모드로

24시간 운영을 위한 필수 설정들입니다:

`# 잠자기 비활성화 sudo pmset -a sleep 0 sudo pmset -a disksleep 0 sudo pmset -a displaysleep 0

전원 복구 시 자동 부팅

sudo pmset -a autorestart 1

원격 접속 활성화

sudo systemsetup -setremotelogin on

화면 공유 활성화 (선택사항)

sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist`

Docker 환경 구성

OrbStack을 사용합니다. Docker Desktop보다 가볍고 M4에서 훨씬 안정적입니다:

`# OrbStack 설치 후 docker compose up -d

제 docker-compose.yml 주요 서비스

- PostgreSQL 16

- Redis 7

- Nginx (리버스 프록시)

- 개발 중인 API 서버 2개`

ARM 이미지가 없는 경우 platform: linux/amd64으로 에뮬레이션 가능하지만, 성능이 절반 이하로 떨어집니다. 가능하면 ARM 네이티브 이미지를 쓰세요.

외부 접속 설정

집 네트워크에서 외부 접속을 위해 Cloudflare Tunnel을 사용합니다. 포트포워딩 없이 안전하게 접속할 수 있어서 좋습니다:

`# cloudflared 설치 brew install cloudflared

터널 생성

cloudflared tunnel create dev-server

설정 파일 (~/.cloudflared/config.yml)

tunnel: [터널ID] credentials-file: /Users/username/.cloudflared/[터널ID].json

ingress:

모니터링

24시간 운영이니까 모니터링은 필수입니다. 저는 간단하게 구성했습니다:

  • Uptime Kuma: 서비스 상태 모니터링 (Docker로 설치)

  • 자작 스크립트: CPU 온도, 메모리, 디스크 체크 → Telegram 알림

`# CPU 온도 확인 (macOS) sudo powermetrics --samplers smc -i1 -n1 | grep "CPU die temperature"

보통 35-45°C 유지 (팬 거의 안 돌아감)`

3개월 운영 후기

전기세가 월 약 3,000원입니다. Mac mini M4의 평균 소비전력이 약 15W거든요. 소음은 사실상 제로입니다. 방에 놓고 자도 전혀 안 들립니다. 3개월간 예기치 않은 재부팅이 딱 1번 있었는데, macOS 자동 업데이트 때문이었습니다. 자동 업데이트는 꺼두세요.

AWS나 VPS에 월 몇만 원 쓰는 것보다, Mac mini 하나 사서 집에서 돌리는 게 개인 개발자에게는 훨씬 합리적인 선택이라고 생각합니다.

관련 글