• About
  • Advertise
  • Privacy & Policy
  • Contact
NQ NEWS
  • Kiến thức tổng hợp
    • Development
    • Deep Learning
    • Cloud Computing
    • Kiến thức bảo mật
    • Tin học văn phòng
  • Thủ thuật
    • Phần Mềm
    • Sửa lỗi máy tính
    • Bảo mật máy tính
    • Tăng tốc máy tính
    • Thủ thuật Wifi
  • Quản trị hệ thống
    • Giải pháp bảo mật
    • Mail Server
    • Mạng LAN – WAN
    • Máy chủ
    • Windows Server 2012
  • Tin tức
No Result
View All Result
  • Kiến thức tổng hợp
    • Development
    • Deep Learning
    • Cloud Computing
    • Kiến thức bảo mật
    • Tin học văn phòng
  • Thủ thuật
    • Phần Mềm
    • Sửa lỗi máy tính
    • Bảo mật máy tính
    • Tăng tốc máy tính
    • Thủ thuật Wifi
  • Quản trị hệ thống
    • Giải pháp bảo mật
    • Mail Server
    • Mạng LAN – WAN
    • Máy chủ
    • Windows Server 2012
  • Tin tức
No Result
View All Result
NQ NEWS
No Result
View All Result
Home Quản trị hệ thống

Cơ bản về Docker Network

@admiz by @admiz
03/05/2021
in Quản trị hệ thống
0
Cơ Bản Về Docker Network 60902c3dc6478.png

Gần đây có bắt đầu tập tành đốc cờ, cá nhân thì tôi cũng có nắm qua qua về Cấu trúc của Virtual Bridge

Network của docker được quản lý thông qua một virtual bridge gọi là docker0. Bạn nào chưa hiểu thế nào là virtual bridge thì mình có tìm thấy một bài viết khá dễ hiểu ở đây. Mục đích của việc này là để tạo ra một network độc lập, tách biệt với môi trường khác.

Khi chúng ta khởi động docker deamon (thông qua sudo service docker start chẳng hạn) thì những step dưới đây sẽ diễn ra:

Assign khoảng ip đó cho docker0

Sau đó khi chúng ta khởi động một container bất kì, thì container đó sẽ được assign những thứ dưới đây:

Một IP bất kì trong range mà docker0 vừa thu được ở trên

Hãy bắt tay vào thử nghiệm nào, đầu tiên khi chưa có container nào khởi động

• Virtual bridge docker0 sẽ được tạo ra

• Docker tự dộng tìm ra một khoảng ip range còn trống từ trong route của máy host

• Chọn ra random một khoảng ip bất kì

• Assign khoảng ip đó cho docker0

Sau đó khi chúng ta khởi động một container bất kì, thì container đó sẽ được assign những thứ dưới đây:

• veth (Virtual Eithernet) interface gắn với docker0

• Một ip bất kì trong range mà docker0 vừa thu được ở trên

Hãy bắt tay vào thử nghiệm nào, đầu tiên khi chưa có container nào khởi động.

$ brctl show

bridge name bridge id STP enabled interfaces

docker0 8000.000000000000 no

(Lưu ý là brctl command sử dụng sau khi bạn cài gói bridge-utils, có thể thông qua yum hoặc apt-get)

Đầu tiên chúng ta thử khởi động 2 container bất kì.

$ docker run -d ubuntu /bin/sh -c “while true; do echo hello world; sleep 1; done”

b9ffb0800ca5

$ docker run -d ubuntu /bin/sh -c “while true; do echo hello world; sleep 1; done”

4c0d9b786e8f

Sau đó kiểm tra lại bridge xem sao.

$ brctl show

bridge name bridge id STP enabled interfaces

docker0 8000.7ab1e2001566 no veth29c1, veth9eb7

Từ kết quả trên chúng ta thấy mỗi container được cung cấp một interface tương ứng, là veth29c1 và veth9eb7.

Sau đó xem thử IP xem sao:

$ ifconfig docker0

docker0 Link encap:Ethernet HWaddr 7a:b1:e2:00:15:66

inet addr:172.17.42.1 Bcast:0.0.0.0 Mask:255.255.0.0

$ docker inspect –format ‘{{ .NetworkSettings.IPAddress ‘ b9ffb0800ca5

172.17.0.2

$ docker inspect –format ‘{{ .NetworkSettings.IPAddress ‘ 4c0d9b786e8f

172.17.0.3

Từ kết quả trên chúng ta thấy docker0 được assign cho khoảng IP 172.17.42.1/16, và từ trong đó trích ra 172.17.0.2 và 172.17.0.3 để chia cho 2 container.

Networking giữa các container với nhau

Để kiểm soát việc các container có nói chuyện được với nhau hay không, chúng ta thông qua parameter -icc của docker daemon.

• Khi -icc = true thì container có thể nói chuyện được với nhau.

• Khi -icc = false thì các container sẽ bị tách biệt với nhau

Ngoài ra để public một port nào đó ra ngoài chúng ta cũng phải chỉ định EXPOSE  trong Dockerfile hoặc là –expose  khi khởi động container.

Cụ thể hơn, để các container nói chuyện được với nhau, docker0 sử dụng một tính năng gọi là –link. Khi khởi động một container nào đó chúng ta phải chỉ định –link containerName:containerAlias , nhờ đó mà service trong container đó sẽ tìm thấy service muốn kết nối đến thông qua biến môi trường.

Kết nối từ network ở ngoài vào container

Để kết nối từ network ở ngoài vào container thì chúng ta phải mapping port của máy host với port mà container expose thông qua docker0.

Ví dụ chúng ta muốn map port 8080 của máy host vào port 80 của docker , sử dụng apache container:

$ ID=$(docker run -d -p 8080:80 tcnksm/apache)

caad0cfc2a0

Chúng ta có thể kiểm tra mapping như sau

$ docker ps

CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES

caad0cfc2a03 tcnksm/apache:latest /usr/sbin/apache2 -D About a minute ago Up About a minute 0.0.0.0:8080->80/tcp elegant_thompson

$ docker port $ID 80

0.0.0.0:8080

Sau đó thử curl từ máy host:

$ curl http://localhost:8080

Hello, docker

$ ID=$(docker run -d -p 80 tcnksm/apache)

$ docker port $ID 80

0.0.0.0:49156

$ curl `docker port $ID 80`

Hello, docker

>> Tham khảo thêm:  Post Views: 132

Previous Post

Next-generation firewall (NGFW) – Tường lửa thế hệ mới tiên tiến

Next Post

Ngăn chặn phần mềm độc hại xâm nhập vào PC

Related Posts

Quicktime Player Logo650 1
macOS

Cách ghép video trên macOS bằng QuickTime Player

26/12/2021
Kali Linux 2021 4 700 1
Linux

Kali Linux 2021.4: Thêm 9 công cụ mới và hỗ trợ tốt hơn cho Apple M1

26/12/2021
Openbsd La Gi 1
Linux

OpenBSD là gì? Đây là mọi thứ bạn cần biết về hệ điều hành này!

26/12/2021
Mac Os Xoa Ung Dung Cai Dat Logo640 1
macOS

Cách gỡ, xóa ứng dụng trên Mac OS

26/12/2021
Tim Thu Vien Anh Photos Library Tren May Mac700 1
macOS

Hướng dẫn tìm thư viện ảnh Photos Library trên máy Mac

26/12/2021
So Sanh Macbook Pro Macbook Air Va Ipad Pro 1
macOS

So sánh MacBook Pro 13 inch với MacBook Air và iPad Pro

26/12/2021
Next Post
Ngăn Chặn Phần Mềm độc Hại Xâm Nhập Vào Pc 60902c3e36c07.jpeg

Ngăn chặn phần mềm độc hại xâm nhập vào PC

Bài mới nhất

Dịch Vụ Thiết Kế Website Tại Hải Dương Chuyên Nghiệp, ấn Tượng Và Uy Tín 612d25752b14f.png

Dịch vụ thiết kế website tại Hải Dương chuyên nghiệp, ấn tượng và uy tín

06/05/2025
Top Công Ty Thiết Kế Website Tại Biên Hòa Chuyên Nghiệp, Chuẩn Seo 612d259494e93.jpeg

Top công ty thiết kế website tại Biên Hòa chuyên nghiệp, chuẩn SEO

06/05/2025
Top Công Ty Thiết Kế Website Tại Vinh – Nghệ An Uy Tín 612d259a9cae3.jpeg

Top công ty thiết kế website tại Vinh – Nghệ An uy tín

05/05/2025
Top 10 Công Ty Thiết Kế Website Tại Nha Trang Chuyên Nghiệp 612d0a9ad018b.jpeg

Top 10 công ty thiết kế website tại Nha Trang chuyên nghiệp

05/05/2025
Các Dịch Vụ Thiết Kế Website Tại Vĩnh Phúc Chuyên Nghiệp, Uy Tín Nhất 612d0a91e63af.jpeg

Các dịch vụ thiết kế website tại Vĩnh Phúc chuyên nghiệp, uy tín nhất

04/05/2025

Danh mục

  • Android
  • Bảo mật máy tính
  • Bảo mật, Antivirus
  • Chuyện công nghệ
  • Deep Learning
  • Development
  • Dịch vụ công trực tuyến
  • Dịch vụ nhà mạng
  • Giải pháp bảo mật
  • Hệ thống
  • Hệ thống
  • iPhone
  • Kiến thức bảo mật
  • Kiến thức cơ bản phổ thông
  • Kiến thức Marketing căn bản
  • Kiến thức tổng hợp
  • Lập trình
  • Linux
  • Linux OS
  • macOS
  • Mail Server
  • Mạng LAN – WAN
  • Máy ảo
  • Máy chủ
  • ms excel
  • ms-powerpoint
  • Nền tảng điện toán đám mây
  • Phần cứng
  • Phần Mềm
  • Quản trị hệ thống
  • Raspberry Pi
  • Sửa lỗi máy tính
  • Tăng tốc máy tính
  • Thủ thuật
  • Thủ thuật SEO
  • Thủ thuật Wifi
  • Tiện ích hệ thống
  • Tin học văn phòng
  • Tin tức
  • Uncategorized
  • Ứng dụng
  • Website
  • Windows Server 2012

Thẻ

#app #chatbot #chatbot tự động #CRM #Kiến thức cơ bản #Techblog #Thiết kế website Android apple CPU Email Marketing Google Google Drive hacker HTML hàm python hàm python có sẵn hình nền hình nền máy tính học css học python học SQL ios iphone iphone 12 iPhone X macos Microsoft mssql MS SQL Server ngôn ngữ lập trình python Raspberry Pi Samsung smartphone SQL SQL Server tham số trong C thủ thuật windows 10 tài liệu python windows windows 10 YouTube điện thoại thông minh ứng dụng
  • About
  • Advertise
  • Privacy & Policy
  • Contact

© 2022 Pha Le Solution

No Result
View All Result
  • Home

© 2022 Pha Le Solution