Docker Network LS 사용법 완벽 가이드! Docker 네트워크 목록 확인하기

Docker를 사용하다 보면 기본 Bridge Network뿐 아니라 프로젝트별로 여러 개의 사용자 정의 네트워크(User-defined Network)를 생성하게 됩니다. 특히 WordPress, MySQL, Nginx, Redis, Spring Boot 등 여러 서비스를 함께 운영하는 경우에는 서비스별 네트워크를 분리하여 관리하는 것이 일반적입니다.

하지만 서버를 오래 운영하다 보면 어떤 네트워크가 존재하는지, 어떤 Driver를 사용하는지, 현재 생성된 네트워크가 정상인지 확인해야 하는 상황이 자주 발생합니다.

이럴 때 사용하는 명령어가 바로 docker network ls입니다.

Docker Network LS는 현재 Docker Host에 생성되어 있는 모든 네트워크 목록을 조회하는 명령어입니다. 네트워크 이름, ID, Driver, Scope 등을 빠르게 확인할 수 있으며, 네트워크 관리의 시작 단계에서 가장 먼저 사용하는 명령어이기도 합니다.

이번 글에서는 Docker Network LS의 개념부터 기본 사용법, 주요 옵션, 출력 결과 해석, 실무 활용 방법까지 자세히 알아보겠습니다.

Docker Network LS란 무엇인가?

Docker Network LS는 현재 Docker 환경에 존재하는 네트워크 목록을 출력하는 명령어입니다.

Docker가 기본적으로 생성하는 Bridge, Host, None 네트워크뿐 아니라 사용자가 직접 생성한 모든 Docker Network를 확인할 수 있습니다.

새로운 네트워크를 생성한 후 정상적으로 만들어졌는지 확인하거나 불필요한 네트워크를 정리하기 전에 가장 먼저 사용하는 명령어입니다.

Docker Network LS는 언제 사용하는가?

다음과 같은 상황에서 자주 사용합니다.

  • 생성된 네트워크 확인
  • 프로젝트별 Network 관리
  • Driver 확인
  • Network 이름 확인
  • 불필요한 Network 정리
  • 장애 분석

Docker Network를 관리하는 거의 모든 작업의 시작 단계에서 사용하는 명령어입니다.

Docker Network LS 기본 사용법

가장 기본적인 사용 방법입니다.

docker network ls

실행하면 다음과 같이 출력됩니다.

NETWORK ID     NAME             DRIVER    SCOPE
4c5b6f7a12cd   bridge           bridge    local
1d2a3b4c5d6e   host             host      local
7e8f9a1b2c3d   none             null      local
5f6e7d8c9b0a   web_network      bridge    local
8b9c0d1e2f3a   backend_network  bridge    local

기본 네트워크와 사용자가 생성한 네트워크를 함께 확인할 수 있습니다.

출력 결과 이해하기

Docker Network LS의 출력 항목은 다음과 같습니다.

NETWORK ID

네트워크를 식별하는 고유 ID입니다.

Docker 내부에서 네트워크를 관리할 때 사용됩니다.

NAME

네트워크 이름입니다.

컨테이너 실행이나 연결 시 가장 많이 사용하는 항목입니다.

DRIVER

사용 중인 네트워크 Driver입니다.

Bridge, Host, Overlay, Macvlan 등이 표시됩니다.

SCOPE

네트워크가 적용되는 범위를 의미합니다.

일반적인 단일 서버에서는 대부분 Local로 표시됩니다.

특정 Driver만 확인하기

Bridge Driver만 확인하고 싶은 경우 Filter를 사용할 수 있습니다.

docker network ls \
--filter driver=bridge

Bridge Network만 출력됩니다.

이름으로 검색하기

특정 프로젝트 네트워크를 찾고 싶다면 이름으로 Filter를 사용할 수 있습니다.

docker network ls \
--filter name=web

이름에 web이 포함된 네트워크만 조회됩니다.

필요한 정보만 출력하기

Network 이름만 확인하고 싶다면 Format 옵션을 사용할 수 있습니다.

docker network ls \
--format "{{.Name}}"

출력 예시입니다.

bridge
host
none
web_network
backend_network

스크립트 자동화에서 자주 사용하는 방법입니다.

Docker Network LS 실무 활용 예제

Docker Network LS는 운영 환경에서 네트워크 구성을 확인하거나 불필요한 네트워크를 정리하기 전 가장 먼저 실행하는 명령어입니다.

모든 Docker Network 확인하기

가장 기본적인 사용 방법입니다.

docker network ls

현재 Docker Host에 생성된 모든 네트워크를 확인할 수 있습니다.

Bridge Network만 조회하기

Bridge Driver를 사용하는 네트워크만 조회합니다.

docker network ls \
--filter driver=bridge

Bridge 기반의 사용자 정의 네트워크를 관리할 때 유용합니다.

이름으로 특정 Network 찾기

프로젝트 이름을 기준으로 검색합니다.

docker network ls \
--filter name=backend

출력 예시는 다음과 같습니다.

NETWORK ID     NAME               DRIVER
91ac53ef7d12   backend_network    bridge

프로젝트별 네트워크를 빠르게 찾을 수 있습니다.

Network 이름만 출력하기

스크립트에서 자주 사용하는 방법입니다.

docker network ls \
--format "{{.Name}}"

출력 결과입니다.

bridge
host
none
frontend
backend
database

Network ID와 이름만 출력하기

필요한 정보만 간단하게 출력할 수도 있습니다.

docker network ls \
--format "{{.ID}} {{.Name}}"

자동화 스크립트나 관리 도구에서 많이 사용하는 방식입니다.

생성 후 정상 여부 확인하기

새로운 네트워크를 생성한 후 목록을 확인합니다.

docker network create api_network
docker network ls

생성한 api_network가 목록에 표시되면 정상적으로 생성된 것입니다.

Linux 서버 문제 해결

운영 중인 Docker 서버에서 Nginx와 Backend 컨테이너가 서로 통신하지 못하는 문제가 발생했습니다.

관리자는 먼저 현재 생성된 네트워크를 확인했습니다.

docker network ls

확인 결과 Backend 컨테이너가 연결되어야 하는 backend_network가 삭제되어 있었습니다.

새로운 네트워크를 다시 생성했습니다.

docker network create backend_network

이후 컨테이너를 해당 네트워크에 다시 연결하자 서비스가 정상적으로 복구되었습니다.

운영 환경에서는 장애가 발생하면 가장 먼저 Docker Network 목록을 확인하는 것이 문제 해결의 첫 단계가 되는 경우가 많습니다.

Docker Network LS 사용 시 주의사항

Docker Network LS를 사용할 때는 다음 사항을 알아두면 좋습니다.

첫 번째는 기본 네트워크인 bridge, host, none은 Docker가 자동으로 생성하는 네트워크라는 점입니다.

특별한 이유가 없다면 삭제하지 않는 것이 좋습니다.

두 번째는 프로젝트별 사용자 정의 네트워크를 명확한 이름으로 생성하는 것이 관리에 도움이 됩니다.

예를 들어 wordpress_network, backend_network, redis_network처럼 용도를 이름에 포함하면 관리가 쉬워집니다.

세 번째는 오래된 프로젝트의 네트워크가 남아 있는지 주기적으로 확인하여 불필요한 리소스를 정리하는 것이 좋습니다.

네 번째는 네트워크 이름이 비슷한 경우에는 --filter 옵션을 적극 활용하면 원하는 네트워크를 빠르게 찾을 수 있습니다.

Best Practice

Docker Network LS를 사용할 때는 다음과 같은 방법을 추천합니다.

  • 네트워크 생성 후 항상 목록을 확인합니다.
  • 프로젝트별 네트워크를 분리하여 관리합니다.
  • 의미 있는 네트워크 이름을 사용합니다.
  • --filter 옵션으로 필요한 네트워크만 조회합니다.
  • --format 옵션을 활용하여 자동화 스크립트를 작성합니다.
  • 사용하지 않는 네트워크는 정기적으로 점검하고 정리합니다.

이러한 방법을 적용하면 Docker 네트워크를 더욱 체계적으로 관리할 수 있습니다.

자주 묻는 질문

Docker Network LS는 어떤 정보를 보여주나요?

Network ID, 이름, Driver, Scope 등 현재 생성된 네트워크 목록을 보여줍니다.

기본으로 생성되는 네트워크는 무엇인가요?

bridge, host, none 세 가지 네트워크가 기본적으로 생성됩니다.

특정 Network만 검색할 수 있나요?

가능합니다.

--filter 옵션을 사용하면 이름이나 Driver를 기준으로 원하는 네트워크만 조회할 수 있습니다.

Network 이름만 출력할 수도 있나요?

가능합니다.

--format "{{.Name}}" 옵션을 사용하면 이름만 간단하게 출력할 수 있습니다.

마무리

Docker Network LS는 현재 Docker 환경의 네트워크 구성을 확인하는 가장 기본적인 명령어입니다.

네트워크 생성 여부 확인, 프로젝트별 관리, Driver 확인, 장애 분석 등 다양한 상황에서 가장 먼저 실행하는 명령어이며, Docker 네트워크 관리의 출발점이라고 할 수 있습니다.

특히 --filter--format 옵션을 함께 활용하면 필요한 정보를 빠르게 조회할 수 있어 운영 서버와 자동화 환경에서도 매우 유용하게 사용할 수 있습니다.

댓글 남기기