-
Docker) Docker Network 실습해보기Cloud/Docker 2022. 10. 6. 00:56
실습 환경 : AWS console (2022/10), Visual Studio Code
실습 목적 : Docker Network의 명령어와 bridge, host, none network을 실습해본다.
Docker Network 명령어
1. Docker Network 목록 (ls)
docker network ls
2. Docker Network 생성 (create)
- -d 옵션을 지정하지 않으면 default 상태인 bridge network로 설정된다.docker network create -d bridge my-net docker network create my-net2
3. Docker Network 삭제 (rm)docker network rm my-net my-net2
4. Docker Network 상세정보 (inspect)docker network inspect bridge
- pipe grep 로 container에 할당된 IP Address를 확인할 수 있다.
docker inspect server | grep IPAddress docker inspect server2 | grep IPAddress
- exec 명령으로 container에서 IP Address를 확인할 수 있다.
docker exec server ifconfig eth0
5. bridge network 조회 명령
- 명령 사용을 위한 패키지 설치sudo apt install bridge-utils
- bridge network 조회
brctl show
- 기본 docker 제공 network를 사용하지 않고 직접 생성하여 적용한 경우
다른 게이트웨이 구성을 갖게된다.- 기본 제공 network 게이트웨이와 새로생성한 network 게이트웨이는 서로 다르다.
Bridge Network로 container 생성해보기
1. container 생성
docker run -d -p 80:80 --name webserver nginx
2. bridge network가 외부로 연결 가능한지 확인
sudo netstat -nlp | grep 80
- host IP와 포트번호는 bridge network로 연결된 container의 IP와 포트번호로 변환하여
외부망으로 보낸다.
- 이때 사용되는 서비스가 NAPT (Network Address Port Translation) 다.ps -ef | grep <PID> | grep -v grep
Host Network로 container 생성해보기
1. container 생성 (--net host 옵션 추가)
docker run -d --net host --name webserver2 nginx
2. 포트 포워딩을 하지 않아도 외부접속이 가능하다.
None network로 container 생성해보기
container에 -p 옵션을 사용해도 --net none 옵션을 사용하면 포트포워딩이 적용되지 않는다.
docker run -d --net none -p 80:80 --name webserver2 nginx
'Cloud > Docker' 카테고리의 다른 글
Docker) Docker Compose 실습해보기 (0) 2022.10.06 Docker) Docker Compose 알아보기 (0) 2022.10.06 Docker) Docker Network 알아보기 (0) 2022.10.05 Docker) Docker Volume Nginx container 실습해보기 (0) 2022.10.04 Docker) Docker Volume 실습해보기 (0) 2022.10.04