네트워크 드라이버 없음 | Docker의 네트워크 #4
Learn what the None driver is, how it enables network isolation, how to use it, and possible use cases
비디오 링크:
Docker의
none 네트워크 드라이버는 무엇입니까? 안전하고 네트워크 격리된 용기를 어떻게 실행합니까?이 블로그는 가능한 한 이 문제에 간단하게 대답할 것이다.
소개하다.
이 블로그는 Docker Networking 기사의 네 번째 편입니다.
다음은 본 블로그의 주제입니다.
Network drivers enable us to easily use multiple types of networks for containers and hide the complexity required for network implementations.
그래서...
none 네트워크 드라이버란 무엇입니까?The
nonedriver simply disables networking for a container, making it isolated from other containers.
 
 컨테이너에서는 이름
none에 매핑된 IP 주소127.0.0.1를 사용하여 루프백 인터페이스만 생성하여 프로세스 간 통신을 활성화합니다.그러나
localhost 등 다른 네트워크 인터페이스가 부족하다는 것은 외부 네트워크와 외부 네트워크를 연결할 수 없다는 것을 의미한다.이것은
eth0 네트워크 드라이버를 매우 안전하게 한다.그러나 우리는 보통 용기 간의 통신을 원하기 때문에 그것의 가용성을 제한한다.잠시 후에 우리는
none의 가능한 용례를 소개할 것이다.이제 우리 공부합시다...
none 네트워크 드라이버는 어떻게 사용합니까?우선,
none 이라는 sh 리눅스 용기에서 네트워크를 지정하지 않고 상호작용 셸 (alpine 을 실행할 것입니다.docker run -it --name app1 alpine sh
app1 로고는 터미널의 입력을 용기의 입력에 연결하여 용기에서 실행되는 셸에 직접 접근할 수 있도록 합니다.드라이버에 대한 설명이 없으면 Docker는 기본
-it 네트워크 드라이버를 사용합니다. 다음 게시물에서 더 많은 것을 알 수 있습니다.그러나 주의해야 할 것은 이 용기는 인터넷에 접근할 수 있다는 것이다.
우리는 핑과 구글 같은 사이트를 통해 이 점을 검사할 수 있다.일반 도메인 이름 형식:
ping google.com
apk update
다음과 같은 방법으로 네트워크 인터페이스와 IP 주소를 확인할 수 있습니다.
ip addr
관심 있는 두 개의 주요 인터페이스는 루프백
bridge 주소와 이더리움 인터페이스127.0.0.1 또는 유사)이다.루프백은 용기 내의 프로세스가 서로 통신할 수 있도록 하고 IP/eth0 주소 내의 이더넷 인터페이스는 용기를 네트워크에 연결한다.주의: 일부 시스템에서는 추가 터널 인터페이스(예를 들어
inet가 나타날 수 있습니다.우리는 지금 그것들을 소홀히 할 수 있다.또한 게이트웨이에 대한 기본 라우팅이 있는 라우팅 테이블이 있는지 확인할 수도 있습니다.
route
네.
이제
tunl0 드라이버가 달린 용기의 행동을 살펴봅시다.이전과 비슷한 용기를 실행할 새terminal 옵션/창을 엽니다.이번에 우리는 네트워크를
none로 지정하고 그것을 none라고 명명할 것이다.docker run -it --name app2 --network none alpine sh
ping google.com
apk update
app2을 시도한다면, 그것은 의외로 일할 것이다.ping localhost
ip addr
그리고 노선이 없다.
route
localhost이든 외부접촉app2이든 상관없다.app2에 연결할 수 있는 유일한 방법은 docker exec 명령을 사용하는 것입니다. 이 명령은 실행 중인 용기에서 명령을 실행하는 데 사용됩니다.세 번째 터미널 탭/창을 열고 다음을 실행합니다.
docker exec app2 ip addr
app2 인터페이스와 IP 주소 목록을 보여 줍니다.다른 대화식 세션을 시작하려면 다른 셸
sh 을 실행하고 -it 와 exec 함께 사용할 수 있습니다.docker exec -it app2 sh
ctrl+d 또는 control+d를 사용하십시오.게임을 마친 후에 우리는 다음과 같은 방법으로 용기를 청소할 수 있다.
docker rm -f app1 app2
none 네트워크 드라이버는 언제 사용합니까? -이 가능하다, ~할 수 있다,...용기에 접촉한 몇 년 동안 개인적으로 생산 과정에서 드라이버를 대량으로 사용하지 않았지만, 엄격한 네트워크 격리가 필요한 경우에도 여전히 유용할 수 있다.
나는 두 가지 리키 용례를 생각해 낼 수 있다.
파일 작업만 수행하는 네트워크 격리 응용 프로그램 실행
이것은 mounting volumes 용기에 가서 완성할 수 있으며, 용기는 특정한 시간 간격으로 작업을 실행하거나 파일 변경 이벤트를 검사해서 완성할 수 있다.예를 들어 용기를 사용하여 데이터베이스 백업, 처리 로그 파일 등을 생성한다.
네트워크 격리가 필요한 일회성 명령 실행
안전하고 네트워크가 격리된 환경에서 로그를 계산하고 인쇄해야 할 때가 있습니다.예를 들어 생성된 공작물 파일을 내보내는ci/cd 작업을 실행하거나 악성 소프트웨어를 포함하는 의심스러운 스크립트를 테스트할 수 있습니다.
none도 사용자 정의 네트워크 드라이버와 함께 사용할 수 있습니다.너는 내가 빠뜨린 다른 중요한 용례를 아니?여기에 추가하고 싶으니까 알려주세요.
결론
이 블로그에서, 우리는 docker의
none 네트워크 드라이버가 무엇인지, 어떻게 사용하는지, 그리고 가능한 용례를 이해했다.네트워크 격리를 사용하면
none 드라이버가 실행 프로세스에 안전한 환경을 제공합니다.그러나 그것도 그것의 가용성을 제한했다.다음 블로그에서는
none 드라이버를 살펴보겠습니다. 이 드라이버는 네 개의 드라이버 중 가장 좋은 네트워크 성능을 제공합니다!⚡️지금까지 감사합니다!👏
다음에 봐요.
그 전에...
대담하게, 끊임없이 공부해라.
하지만 가장 중요한 건,
기술적 배려!
Reference
이 문제에 관하여(네트워크 드라이버 없음 | Docker의 네트워크 #4), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/alubhorta/the-none-network-driver-networking-in-docker-4-4m3o텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)