Mac에서 개발 서버, 포트, Docker, 빌드 폴더 관리하기
OneMacTools의 개발 및 에이전트를 사용하면 Mac의 개발 서버와 포트를 한 화면에서 관리할 수 있어요. 시작한 모든 서버를 프로젝트별로 포트, 메모리, CPU, 연결과 함께 나열하고, 유휴 상태로 방치된 서버를 표시하며, 클릭 한 번으로 중지해요. Docker, Colima, OrbStack 컨테이너와 공간도 보여 주고, node_modules 같은 오래된 빌드 폴더를 찾아 지울 수 있게 해요.
이 페이지의 내용
개발 및 에이전트 화면에 표시되는 내용
사이드바의 내 Mac 아래에서 개발 및 에이전트를 열거나 이동 › 개발 및 에이전트를 선택하세요. 부제목이 작동 방식을 알려 줘요. 내 프로세스만 · 묻지 않고 중지하는 항목 없음. 나로 실행 중인 프로세스만 살펴보고, 다른 사용자나 macOS 자체의 프로세스는 보지 않아요.
상단의 타일 4개에 에이전트 세션, 개발 서버, 유휴 서버, 사용 중인 메모리(에이전트와 서버를 합산하되, 에이전트가 시작한 서버는 두 번 세지 않음)가 표시돼요. 그 아래에 탭이 4개 있어요:
| 탭 | 용도 |
|---|---|
| 에이전트 | AI 코딩 에이전트와 에이전트가 시작한 모든 항목. AI 코딩 에이전트 모니터링을 참고하세요. |
| 개발 서버 | 포트를 사용 중인 서버와 데이터베이스를 프로젝트별로 묶어 보여 줘요. |
| Docker | Docker Desktop, Colima 또는 OrbStack의 컨테이너, 이미지, 빌드 캐시. |
| 프로젝트 파일 | node_modules처럼 프로젝트 안에 있는 빌드 및 다운로드 폴더. |
화면이 열려 있는 동안 목록이 3초마다 새로 고쳐지고, 화면을 떠나면 멈춰요. 도구 막대의 새로 고침 버튼을 누르면 지금 모든 것을 다시 읽어요. 이 페이지는 마지막 세 개의 탭을 다뤄요.
개발 서버를 찾고 프로젝트별로 묶는 방법
개발 서버란 TCP 포트에서 수신 대기 중인 내 프로세스 중, 알려진 런타임이거나 프로젝트 폴더 안에서 실행되며 앱의 일부가 아닌 것을 말해요. 인식하는 런타임에는 node, bun, deno, python, ruby, java, php, dotnet, go, vite, esbuild, uvicorn, gunicorn, puma, rails, hugo, caddy, nginx, httpd, streamlit, Jupyter, ollama, 그리고 데이터베이스 postgres, redis-server, mysqld, mongod가 있어요.
각 서버는 실행되는 프로젝트 아래에 놓여요. 프로젝트는 홈 폴더 안에서 package.json, .git, pyproject.toml, requirements.txt, Cargo.toml, go.mod, Gemfile, composer.json, pom.xml, build.gradle, Package.swift, deno.json, pubspec.yaml, mix.exs, Podfile 같은 프로젝트 파일이 있는 가장 가까운 폴더예요. Homebrew로 설치한 Postgres는 어떤 프로젝트에도 속하지 않으므로 프로젝트에 속하지 않음 아래에 놓여요.

서버 행 읽는 법
- :3000 같은 포트 칩. 하나를 클릭하면 브라우저에서
http://localhost:3000이 열려요. - 데이터베이스는 Postgres, Redis, MySQL, MongoDB를 표시해요.
- 네트워크에 공개됨(주황색)은 모든 인터페이스에서 수신 대기한다는 뜻이므로, 이 Mac뿐 아니라 같은 Wi-Fi의 다른 기기도 접근할 수 있어요.
- 유휴 3시간(주황색)은 그 시간 동안 CPU 사용과 연결이 없었다는 뜻이에요(아래 참고).
node next dev -p 3000같은 명령, 그다음 Terminal에서 또는 Cursor에서(시작한 앱), 실행 시간, 열린 연결 수가 표시돼요.- 오른쪽에 메모리와 CPU, 그리고 중지….
Mac에서 포트를 사용하는 것을 찾는 방법
개발 서버 맨 위의 검색 필드에 입력하세요. 포트에서 실행 중인 항목… (3000, 8080) 또는 이름. 숫자는 그 숫자로 시작하는 포트와 일치하고(80은 8000과 8080을 찾아요), 단어는 명령과 일치해요(astro, uvicorn). 일반적인 배경 설명과 lsof를 사용한 터미널 방법은 Mac에서 포트를 사용 중인 것은? 가이드에 있어요.
개발 도구가 아니라 앱과 macOS 서비스가 사용 중인 포트는 맨 아래 포트를 사용 중인 기타 앱(N)에 모여 있어요. 펼치면 각 앱과 포트를 볼 수 있어요. 예를 들어 AirPlay 수신기는 5000번과 7000번 포트를 사용하므로 5000번 포트의 Flask 앱이 시작되지 않을 때가 있어요. 여기서는 이런 항목을 중지할 수 없으니, 포트를 비우려면 앱을 종료하세요(또는 시스템 설정에서 AirPlay 수신기를 끄세요).
유휴 서버와 서버를 안전하게 중지하기
OneMacTools가 감시하는 동안 최소 15분 동안 CPU를 거의 쓰지 않고 열린 연결도 없었던 서버는 유휴 상태로 간주돼요. 유휴 서버 타일에 그 수가 표시되고, 각 서버에는 기간과 함께 유휴 칩이 붙어요. 사흘 전에 시작해 놓고 잊어버린 Astro 문서 사이트가 전형적인 예예요.
서버 중지
- 행에서 중지…를 클릭하세요.
- 확인 내용을 읽으세요. 예: 포트 4321의 node를 중지할까요?와 298MB와 포트를 비웁니다. 필요할 때 프로젝트에서 다시 시작하세요.
- 중지를 클릭하세요. 초록색 줄이 몇 개의 프로세스가 중지되었는지 확인해 주고, 1초 후에 목록이 업데이트돼요.
중지는 Ctrl-C가 보내는 것과 같은 정중한 신호로 프로세스에 종료를 요청하므로, 서버가 깔끔하게 닫힐 수 있어요. OneMacTools는 내 프로세스만 중지하며, 프로세스 ID가 여전히 목록에 있던 같은 프로그램의 것인지 다시 확인하므로 재사용된 프로세스 ID를 실수로 중지하는 일은 없어요.
폭주 프로세스 알림
이 화면이 닫혀 있어도 OneMacTools는 30초마다 개발 프로세스를 확인하며, 프로세스가 10분 동안 코어 1개를 가득 쓰거나, 1시간에 1기가바이트씩 늘어나거나, 하루 동안 포트에서 유휴 상태로 있으면 중지 버튼이 있는 알림을 보내요. rustc, clang, tsc, webpack 같은 컴파일러는 바쁜 게 정상이므로 그대로 둬요. 설정 › 폭주 프로세스에서 이 기능을 끄거나 OneMacTools가 직접 중지하게 할 수 있어요: CPU를 최대로 쓰며 멈춘 프로세스 중지(15분, 30분 또는 1시간 후)와 아무도 쓰지 않는 개발 서버 중지(1일, 3일 또는 7일 후). 둘 다 기본값은 안 함이에요. 설정 안내서를 참고하세요.
Docker, Colima, OrbStack
Docker 탭은 Docker Desktop, Colima, OrbStack과 함께 작동해요. 상태에 따라 보이는 내용이 달라요.
- Docker가 설치되어 있지 않음: 세 가지 모두 이 Mac에 없어요.
- Docker가 실행 중이 아님: 중지된 상태에서도 가상 머신이 차지하는 디스크 용량을 보여 줘요. Docker Desktop 열기 또는 Colima 시작으로 실행할 수 있어요(Colima는
colima start를 실행하며 1분 정도 걸릴 수 있어요). Colima에는 “colima delete” 복사도 있어요. 더 이상 사용하지 않고 공간을 되찾고 싶다면 터미널에 붙여 넣으세요. - 실행 중: Docker가 사용하는 공간과 컨테이너.
Docker가 사용하는 공간
이미지, 컨테이너, 로컬 볼륨, 빌드 캐시마다 한 행씩, 개수, 크기, 확보 가능한 용량이 표시돼요. 정리…는 실행하기 전에 무엇을 하는지 설명해요:
| 가로줄 | 정리가 제거하는 것 |
|---|---|
| 이미지 | 어떤 컨테이너도 사용하지 않는 이미지. 필요할 때 다시 다운로드하거나 빌드해요. |
| 컨테이너 | 중지된 컨테이너. 볼륨 밖에 저장한 내용은 사라져요. |
| 빌드 캐시 | Docker의 빌드 캐시. 다음 빌드가 더 오래 걸려요. |
| 로컬 볼륨 | 어떤 컨테이너도 사용하지 않는 볼륨. 데이터베이스나 업로드 같은 데이터가 영구적으로 삭제돼요. |
컨테이너에는 각 컨테이너가 이미지, 상태, 포트, 메모리, CPU, 그리고 Compose 프로젝트가 있다면 그것과 함께 나열돼요. 실행 중인 컨테이너에는 중지…(데이터는 유지됨)가 있고, 중지된 컨테이너에는 시작과 제거…(볼륨은 유지됨)가 있어요. OrbStack이 설치되어 있으면 OrbStack 머신에 Linux 머신이 시작 및 중지…와 함께 나열돼요.
오래된 node_modules와 빌드 폴더 지우기
모든 JavaScript 프로젝트에는 수백 메가바이트에 달할 수 있는 node_modules가 있고, Rust, Python, Flutter 프로젝트에도 각각 비슷한 것이 있어요. 프로젝트 파일은 홈 폴더를 탐색해(6단계 깊이까지, Library, 응용 프로그램, 미디어 폴더, 도구 자체의 숨김 폴더는 건너뜀) 빌드 폴더를 프로젝트별로 큰 순서대로 나열해요.
폴더를 다시 만드는 파일이 바로 옆에 있을 때만 폴더가 나열되므로, 단지 이름이 build나 target일 뿐인 폴더는 절대 건드리지 않아요:
| 폴더 | 옆에 필요한 것 | 설명 |
|---|---|---|
node_modules | package.json | 다운로드한 패키지. npm install(또는 yarn, pnpm, bun)로 다시 가져올 수 있어요 |
.next, .nuxt, .svelte-kit, .turbo, .parcel-cache, .open-next | package.json | 프레임워크 빌드 출력물과 캐시 |
.angular | angular.json 또는 package.json | Angular 빌드 캐시 |
.wrangler | wrangler.toml, wrangler.jsonc 또는 package.json | Wrangler의 로컬 상태와 캐시 |
target | Cargo.toml | Rust 빌드 결과물 |
.venv, venv | pyproject.toml, requirements.txt 등 | Python 가상 환경 |
Pods | Podfile | CocoaPods 의존성 |
.build | Package.swift | Swift Package Manager 빌드 결과물 |
.dart_tool, build, .gradle | pubspec.yaml 또는 Gradle 파일 | Dart, Flutter, Gradle 출력물과 캐시 |
각 프로젝트에는 내 파일과 Git 활동을 바탕으로 마지막으로 변경한 시점이 표시돼요. 30일 동안 손대지 않은 프로젝트는 자동으로 체크되고 날짜가 주황색으로 바뀌어요. 돋보기를 클릭하면 Finder에서 폴더를 볼 수 있어요.
- 곧 작업할 항목은 체크 해제하세요.
- N개를 휴지통으로 이동…을 클릭하고 확인하세요. 대화상자에 확보되는 공간이 표시돼요.
- 다음에 프로젝트 작업을 할 때 패키지 관리자나 빌드가 폴더를 다시 만들어요. 휴지통을 비우기 전까지는 기록에서 되돌려 놓을 수 있어요.
Mac에서 node_modules 삭제하기 가이드에서 일반적인 방법을 설명해요. 프로젝트 파일은 이를 클릭만으로 할 수 있게 한 버전이에요. Mac 전체의 공간은 Mac 정리를 참고하세요.
AI 어시스턴트에서 사용하기
Claude, Cursor, Codex 및 기타 어시스턴트도 OneMacTools MCP 서버를 통해 같은 측정값을 사용할 수 있어요. 포트에서 실행 중인 것, 프로젝트별 개발 서버, Docker 상태, 오래된 프로젝트 파일이에요. 어시스턴트가 작업 중에 “포트 3000을 뭐가 쓰고 있어?”라고 물으면 여기서 보는 것과 같은 답을 얻어요. 무엇이든 중지하려면 여전히 내 승인이 필요해요(승인 방식).
질문
터미널 없이 Mac에서 포트를 사용하는 프로세스를 종료하려면 어떻게 하나요?
개발 및 에이전트를 열고 개발 서버를 선택한 다음, 검색 필드에 포트 번호를 입력하고 해당 행에서 중지…를 클릭하세요. OneMacTools가 서버에 정상 종료를 요청하고 포트를 비워요. 앱이 사용 중인 포트는 포트를 사용 중인 기타 앱 아래에 나열돼요. 이런 포트를 비우려면 해당 앱을 종료하세요.
Mac에서 포트 5000이 이미 사용 중인 이유는?
macOS의 AirPlay 수신기는 5000번과 7000번 포트를 사용해요. 개발 및 에이전트에서는 포트를 사용 중인 기타 앱 아래에 나열돼요. 시스템 설정 › 일반 › AirDrop 및 Handoff에서 AirPlay 수신기를 끄거나, 앱을 다른 포트에서 실행하세요.
개발 서버의 “네트워크에 공개됨”은 무엇을 뜻하나요?
서버가 이 Mac뿐 아니라 모든 네트워크 인터페이스에서 수신하므로, 같은 Wi-Fi에 있는 휴대폰과 컴퓨터가 접근할 수 있어요. 휴대폰에서 테스트할 때 편리하지만, 공용 Wi-Fi에서는 localhost에 바인딩하는 편이 나을 수 있어요.
OneMacTools가 서버를 마음대로 중지하나요?
요청하지 않는 한 아니에요. 기본적으로는 폭주하거나 유휴 상태인 프로세스에 대해 알림만 보내요. 설정 › 폭주 프로세스에서 CPU를 최대로 쓰며 멈춘 프로세스를 15분, 30분 또는 60분 후에, 사용하지 않는 개발 서버를 1일, 3일 또는 7일 후에 중지하도록 선택할 수 있어요.
node_modules를 삭제해도 안전한가요?
예, 옆에 package.json이 있다면요. 프로젝트 파일이 이를 확인해요. npm install(또는 yarn, pnpm, bun)을 실행하면 다시 생겨요. OneMacTools는 폴더를 휴지통으로 옮기므로, 휴지통을 비우기 전까지 기록에서 되돌려 놓을 수 있어요.
개발 및 에이전트는 Colima와 OrbStack에서도 작동하나요?
예. Docker 탭은 Docker Desktop, Colima, OrbStack을 읽고, Colima를 시작하거나 Docker Desktop을 열 수 있으며, OrbStack의 Linux 머신을 시작 및 중지와 함께 나열해요.