피드로 돌아가기
Building on Midnight with Windows — A Real Developer's WSL2 Setup Guide
Dev.toDev.to
Infrastructure

WSL2 기반 8GB 메모리 최적화로 Midnight ZK Proof 서버 구동 환경 구축

Building on Midnight with Windows — A Real Developer's WSL2 Setup Guide

Gutopro2026년 4월 29일8intermediate

Context

Midnight 툴체인의 Compact 컴파일러 및 Proof 서버가 Linux 바이너리로만 제공되어 Windows 네이티브 환경에서 실행 불가능한 제약 발생. 특히 Proof 서버의 높은 리소스 요구량으로 인해 기본 WSL2 설정으로는 런타임 크래시가 발생하는 구조적 한계 존재.

Technical Solution

  • OS 추상화 계층 확보를 위해 WSL2를 도입하여 Ubuntu 24.04 LTS 기반의 완전한 Linux 커널 환경 구축
  • .wslconfig 설정을 통한 메모리 할당량을 1GB에서 최소 4GB 이상(권장 8GB)으로 확장하여 ZK Proof 생성 중 메모리 부족으로 인한 Silent Crash 방지
  • File I/O 병목 해결을 위해 프로젝트 경로를 Windows 마운트 지점(/mnt/c/)이 아닌 Linux 네이티브 홈 디렉토리(~/ )로 배치하여 디스크 성능 최적화
  • Node.js 22 버전을 nvm으로 고정하여 Midnight SDK 및 create-mn-app과의 런타임 호환성 보장 및 버전 충돌 제거
  • Docker Engine을 WSL2 내부 직접 설치하여 Proof 서버 컨테이너의 실행 오버헤드 감소 및 네트워크 포트 포워딩(localhostForwarding=true) 설정
  • .bashrc 내 PATH 환경 변수 확장을 통한 Compact 컴파일러의 바이너리 접근성 확보

- WSL2 사용 시 .wslconfig 파일을 통한 Memory/CPU/Swap 할당량 명시적 설정 확인 - Linux 바이너리 기반 프로젝트 수행 시 /mnt/c/ 경로를 피하고 Linux Native File System 사용 권장 - 런타임 버전 민감도가 높은 SDK 사용 시 nvm 등 버전 관리 도구를 통한 특정 버전 핀닝(Pinning) 적용 - 컨테이너 기반 서비스의 포트 접근 이슈 발생 시 localhostForwarding 설정 여부 점검

원문 읽기