Email Doanh NghiệpSSLFirewall Anti DDoS

NỘI DUNG

Banner blog lễ 30.4 và 1.5

Docker Network là gì? Cách tạo, quản lý và tối ưu hiệu suất Docker Network

Hưng Nguyễn

Đã kiểm duyệt nội dung

Ngày đăng:24/04/2026
Lượt xem

Quy trình sản xuất nội dung

Đánh giá

[esi kkstarratings cache="private" ttl="3"]

Trong quá trình trực tiếp triển khai và vận hành các hệ thống microservices trên nền tảng container, mình đã xử lý nhiều bài toán phức tạp liên quan đến việc thiết lập kết nối và bảo mật luồng dữ liệu giữa các dịch vụ. Docker Network là nền tảng cốt lõi quyết định khả năng giao tiếp và hiệu suất vận hành của toàn bộ ứng dụng trong môi trường sản xuất. Từ những kinh nghiệm thực tế trong việc cấu hình và khắc phục sự cố hệ thống, bài viết này sẽ cung cấp hướng dẫn chi tiết về cách thiết lập và quản lý mạng lưới container một cách chuyên sâu.

Những điểm chính

Đối với mình, Docker Network không chỉ là phần cấu hình kết nối giữa các container mà còn là yếu tố quyết định trực tiếp đến khả năng giao tiếp, bảo mật và hiệu suất của toàn bộ hệ thống containerized. Để giúp bạn hiểu rõ và triển khai hiệu quả, bài viết dưới đây sẽ cung cấp các thông tin gồm:

  • Khái niệm: Hiểu rõ Docker Network là một hệ thống mạng ảo do Docker cung cấp, cho phép các container Docker giao tiếp với nhau.
  • Các loại phổ biến: Tìm hiểu về các loại network driver như Bridge, Host và Overlay, giúp bạn lựa chọn đúng kiến trúc mạng phù hợp nhất với từng kịch bản.
  • Cách tạo và quản lý: Nắm vững các lệnh cơ bản để tạo, kết nối và xóa network, giúp bạn có thể tự mình quản lý vòng đời của các mạng ảo một cách hiệu quả.
  • Ứng dụng trong Docker Compose và Swarm: Tìm hiểu cách Docker Network được tích hợp và tự động hóa trong các công cụ điều phối, giúp bạn dễ dàng xây dựng các ứng dụng đa container phức tạp.
  • Hướng dẫn bảo mật và tối ưu hiệu suất: Nắm vững các phương pháp hay nhất từ việc phân tách mạng, mã hóa lưu lượng đến tối ưu DNS, giúp bạn xây dựng một hệ thống Docker Network an toàn và hiệu suất cao.
  • So sánh với Kubernetes Network: Phân biệt rõ ràng sự khác biệt về kiến trúc, mô hình IP và khả năng mở rộng, giúp bạn lựa chọn đúng nền tảng điều phối phù hợp nhất với quy mô và độ phức tạp của dự án.
  • Biết thêm Vietnix là nhà cung cấp dịch vụ Enterprise Cloud và hạ tầng lưu trữ tốc độ cao phù hợp với website thương mại điện tử.
  • Câu hỏi thường gặp: Được giải đáp các thắc mắc phổ biến liên quan đến Docker Network.
những điểm chính

Docker Network là gì?

Docker Network là hệ thống mạng ảo do Docker cung cấp, cho phép các container Docker giao tiếp với nhau, với máy chủ và với mạng bên ngoài một cách hiệu quả, bảo mật và linh hoạt. Thông qua các network driver như bridge, host, overlay,… Docker Network giúp bạn tạo các mạng riêng biệt, quản lý địa chỉ IP, định tuyến và phạm vi truy cập cho từng container, từ đó hình thành nền tảng kết nối cho ứng dụng phân tán và kiến trúc nhiều dịch vụ (microservices).

Docker Network là hệ thống mạng ảo do Docker cung cấp
Docker Network là hệ thống mạng ảo do Docker cung cấp

Với các hệ thống container hóa hoặc Kubernetes cluster chạy trên hạ tầng cloud riêng, doanh nghiệp thường kết hợp Docker Network với nền tảng cloud để tách môi trường, chia network theo từng ứng dụng và tối ưu hiệu năng giữa các node. Với Enterprise Cloud Vietnix, bạn có thể chủ động thiết kế network layer phía dưới (subnet, private network, firewall) rồi đặt Docker/Kubernetes lên trên, nhờ đó kiểm soát tốt hơn cả tài nguyên lẫn luồng mạng giữa các cụm container. Liên hệ ngay để được tư vấn chi tiết!!

1. Bridge

Bridge là loại mạng mặc định của Docker, sử dụng một bridge interface ảo trên host để kết nối các container thông qua NAT:

  • Cơ chế hoạt động: Các container trong cùng một mạng bridge có thể giao tiếp nội bộ một cách liền mạch bằng IP hoặc hostname. Khi cần truy cập Internet hoặc tiếp nhận lưu lượng từ bên ngoài, luồng dữ liệu sẽ đi qua IP của máy chủ kết hợp với cơ chế port mapping.
  • Ứng dụng thực tế: Lý tưởng cho môi trường single-host, các ứng dụng microservices quy mô nhỏ, môi trường lab/dev cần sự tách biệt mạng ở mức cơ bản nhưng vẫn đảm bảo tính dễ dàng trong khâu quản lý.

2. Host

Khác với Bridge, Host Network cho phép container dùng chung toàn bộ network namespace với máy chủ:

  • Cơ chế hoạt động: Container không được cấp địa chỉ IP riêng mà sử dụng trực tiếp IP và dải port của máy chủ. Cơ chế này loại bỏ hoàn toàn quá trình xử lý NAT, từ đó giảm thiểu tối đa overhead và cải thiện đáng kể độ trễ mạng.
  • Ứng dụng thực tế: Phù hợp với các dịch vụ đòi hỏi hiệu năng mạng khắt khe, các container cần bind số lượng lớn port cùng lúc, hoặc các agent/công cụ giám sát hệ thống – Nơi việc chia sẻ không gian mạng với host là chấp nhận được.

3. Overlay

Overlay Network tạo ra một mạng ảo phân tán (distributed network) chạy chồng lên lớp hạ tầng mạng hiện có:

  • Cơ chế hoạt động: Cho phép các container phân tán trên nhiều host Docker khác nhau giao tiếp với nhau như thể chúng đang nằm chung một mạng LAN phẳng. Quá trình này thường đi kèm với Docker Swarm hoặc Kubernetes, sử dụng các công nghệ đóng gói mạng như VXLAN.
  • Ứng dụng thực tế: Giải pháp không thể thiếu cho các hệ thống phân tán, kiến trúc microservices chạy đa node. Đặc biệt khi triển khai trên các hạ tầng cấp doanh nghiệp như Enterprise Cloud, Overlay giúp các dịch vụ nói chuyện qua lại xuyên suốt giữa nhiều máy chủ ảo mà vẫn giữ được khả năng quản trị tập trung.

4. Macvlan

Macvlan Network cho phép gán trực tiếp địa chỉ MAC riêng biệt cho từng container, khiến chúng xuất hiện trên hệ thống mạng dưới dạng một máy chủ vật lý độc lập:

  • Cơ chế hoạt động: Container sẽ nhận IP trực tiếp từ dải Subnet của mạng LAN hoặc thông qua DHCP mà không cần cơ chế NAT. Mặc định tính năng giao tiếp trực tiếp giữa host và container ở chế độ này sẽ bị chặn bởi tính năng bảo mật của Linux Kernel, đòi hỏi phải cấu hình định tuyến bổ sung.
  • Ứng dụng thực tế: Giải pháp hoàn hảo khi cần ảo hóa các ứng dụng legacy (ứng dụng cũ), triển khai hệ thống giám sát mạng sâu, hoặc thiết lập trên các hạ tầng on-premise/cloud yêu cầu mỗi container phải có một IP riêng biệt để áp dụng các chính sách firewall (routing/monitoring) độc lập như một server thực thụ.

5. None

Đúng như tên gọi, None Network cách ly hoàn toàn container khỏi hệ thống mạng bên ngoài.

  • Cơ chế hoạt động: Container chỉ giữ lại duy nhất một interface loopback (lo) để xử lý nội bộ. Nó hoàn toàn mù với host và các network khác trừ khi có sự can thiệp cấu hình thủ công phức tạp.
  • Ứng dụng thực tế: Chuyên dụng cho các tiến trình chạy nền, các tác vụ xử lý dữ liệu offline (như backup, render file) hoặc các kịch bản an ninh mạng đòi hỏi mức độ cô lập tuyệt đối để bảo vệ các workload cực kỳ nhạy cảm.
Các loại Docker Network phổ biến
Các loại Docker Network phổ biến

1. Lệnh cơ bản tạo network

Khi làm việc với Docker Network, bạn sẽ thao tác chủ yếu qua nhóm lệnh. Trước hết, bạn có thể liệt kê các network hiện có để nắm bức tranh tổng quan:

docker network ls

Tiếp theo, bạn tạo một network mới với driver mặc định bridge cho môi trường single-host:

docker network create my_app_net

Nếu hạ tầng yêu cầu phân hoạch địa chỉ IP chặt chẽ, bạn có thể chỉ định luôn subnet và gateway khi tạo network:

docker network create \
  --driver bridge \
  --subnet 192.168.10.0/24 \
  my_app_net

Khi triển khai trên Enterprise Cloud Vietnix, bạn có thể thiết kế subnet Docker khớp hoặc tách biệt với subnet nội bộ của cụm tài nguyên, từ đó quản lý firewall, routing và kết nối tới dịch vụ backend dễ hơn.

2. Kết nối container vào network

Sau khi tạo network, bạn cần gắn container vào đó để chúng có thể giao tiếp nội bộ và ra ngoài. Docker cho phép bạn gắn network ngay khi khởi tạo container hoặc kết nối thêm network cho container đang chạy. Bạn có thể tạo một container và chỉ định network ngay từ đầu với lệnh:

docker run -d --name app1 --network my_app_net nginx

Sau đó, bạn khởi tạo thêm container khác cùng network để hai container này có thể gọi nhau bằng tên:

docker run -d --name app2 --network my_app_net busybox sleep 3600

Nếu container đã tồn tại, bạn vẫn có thể kết nối nó vào network mới bằng lệnh:

docker network connect my_app_net app1

3. Kiểm tra và xóa network

Khi số lượng network và container tăng lên, bạn cần kiểm tra cấu hình chi tiết và dọn dẹp các network không còn sử dụng. Docker cung cấp các lệnh để xem danh sách, inspect network, ngắt kết nối container và xóa network an toàn. Bạn có thể xem tất cả network hiện có bằng:

docker network ls

Để kiểm tra chi tiết một network, bao gồm driver, subnet, gateway và danh sách container đang gắn, bạn dùng:

docker network inspect my_app_net

Khi cần tách một container khỏi network, bạn thực hiện:

docker network disconnect my_app_net app1

Cuối cùng, nếu network không còn container nào sử dụng, bạn có thể xóa hoàn toàn:

docker network rm my_app_net

Trong các môi trường có vòng đời container ngắn và nhiều môi trường dev/test, bạn cũng nên dùng lệnh prune để xóa các network không còn gắn container nào:

docker network prune

Quan điểm của mình: Trong môi trường có nhiều service và team cùng phát triển, việc chuẩn hóa một bộ lệnh Docker Network đơn giản (create, connect, inspect, prune) và đưa vào checklist triển khai sẽ giúp bạn tránh rất nhiều sự cố mất kết nối ngẫu nhiên về sau, thay vì để mỗi người tự tùy biến mạng theo cách riêng.

1. Network trong Docker Compose

Trong Docker Compose, mỗi file docker-compose.yml sẽ tạo ra ít nhất một network mặc định để các service giao tiếp với nhau bằng tên service thay vì IP. Bạn có thể để Compose tự tạo network project_default hoặc khai báo rõ nhiều network khác nhau để tách luồng giao tiếp giữa các nhóm service.

Bạn có thể khai báo network ngay trong file Compose như sau:

services:
  web:
    image: nginx
    networks:
      - frontend

  api:
    image: my-api
    networks:
      - frontend
      - backend

  db:
    image: postgres
    networks:
      - backend

networks:
  frontend:
  backend:

Khi bạn chạy docker compose up, Compose sẽ tạo hai network frontendbackend, sau đó gắn từng container tương ứng theo khai báo. Cách thiết kế này giúp bạn cô lập db khỏi web trực tiếp. Đồng thời, nó vẫn cho phép api truy cập cả hai phía, phù hợp với kiến trúc nhiều tầng chạy trên các VM chuyên dụng hoặc cụm Enterprise Cloud.

2. Overlay Network trong Swarm

Trong Docker Swarm, Overlay Network là cách tiêu chuẩn để kết nối các service chạy trên nhiều node khác nhau như cùng một mạng logic. Swarm dùng overlay để cho phép container trên các máy worker và manager giao tiếp với nhau mà không cần bạn tự cấu hình tunnel hoặc routing phức tạp.

Trước tiên, bạn khởi tạo hoặc join một Swarm cluster, sau đó bạn tạo Overlay Network:

docker swarm init            # trên node manager
docker network create \
  -d overlay \
  --attachable \
  app_overlay

Tiếp theo, bạn triển khai dịch vụ và gán chúng vào overlay network:

docker service create \
  --name api \
  --network app_overlay \
  my-api-image

docker service create \
  --name web \
  --network app_overlay \
  -p 80:80 \
  nginx

Swarm sẽ tự đảm nhiệm phần phân giải DNS nội bộ, phân phối IP và mã hóa traffic giữa các node tùy cấu hình. Khi chạy trên nhiều máy ảo trong Enterprise Cloud Vietnix, bạn chỉ cần đảm bảo các node có thể liên lạc qua các port Swarm yêu cầu, phần còn lại Overlay Network sẽ xử lý.

3. Troubleshooting network

Khi ứng dụng gặp lỗi kết nối trong Compose hoặc Swarm, bạn cần kiểm tra cả phần định nghĩa network lẫn trạng thái container và node. Các bước cơ bản thường bắt đầu từ việc kiểm tra network, inspect chi tiết rồi thử kết nối trực tiếp giữa các container.

Trước hết, bạn kiểm tra các network đang tồn tại bằng lệnh:

docker network ls

Sau đó, bạn dùng docker network inspect để xem container nào đang gắn vào network, subnet, driver và các thông số khác:

docker network inspect app_overlay

Nếu container không resolve được tên service, bạn có thể exec vào container và thử ping hoặc curl theo hostname để xác định vấn đề nằm ở DNS nội bộ hay ở phía ứng dụng:

docker exec -it web sh
# bên trong container
ping api
curl http://api:5000/health

Trong Swarm, bạn cũng nên kiểm tra trạng thái service và task bằng docker service ps, cũng như đảm bảo các node ở trạng thái running và không bị lỗi mạng ở lớp hạ tầng.

1. Bảo mật Docker Network

Khi thiết kế Docker Network, bạn cần ưu tiên khả năng cô lập và kiểm soát truy cập để giảm rủi ro tấn công và rò rỉ dữ liệu. Việc thiết lập bảo mật nên được thực hiện ngay từ bước thiết kế kiến trúc chứ không chỉ xử lý bổ sung ở giai đoạn vận hành. Cụ thể như sau:

  • Phân tách mạng riêng biệt: Bạn nên tạo nhiều network độc lập cho từng nhóm container hoặc từng ứng dụng, chẳng hạn tách frontend, backend, database, để giới hạn phạm vi truy cập giữa các thành phần.
  • Sử dụng firewall và luật lọc truy cập: Bạn có thể cấu hình iptables, nftables hoặc firewall của nền tảng cloud để kiểm soát port và địa chỉ IP được phép đi vào hoặc đi ra giữa host và các network Docker.
  • Giới hạn truy cập Internet: Đối với các container chỉ xử lý nội bộ, bạn nên gắn chúng vào network none hoặc đặt rule chặn outbound phù hợp nhằm tránh việc container bị lợi dụng để tạo kết nối ra ngoài.
  • Giám sát lưu lượng mạng: Bạn nên triển khai công cụ giám sát như Netdata, cAdvisor hoặc hệ thống monitoring của hạ tầng để theo dõi lưu lượng, số kết nối, IP bất thường, từ đó phát hiện sớm hành vi lạ trên Docker Network.
  • Mã hóa overlay network trong Swarm: Khi dùng overlay network cho Docker Swarm, bạn nên bật mã hóa với tùy chọn --opt encrypted để bảo vệ dữ liệu trao đổi giữa các node, đặc biệt khi các node đặt trên các subnet khác nhau hoặc kết nối qua Internet.
Các cách bảo mật Docker Network
Các cách bảo mật Docker Network

2. Tối ưu hiệu suất Docker Network

Để Docker Network hoạt động hiệu quả, bạn không chỉ cần chọn đúng loại mạng mà còn phải tinh chỉnh các yếu tố liên quan như DNS, MTU và mật độ container trên mỗi network. Những tối ưu này giúp giảm độ trễ, cải thiện throughput và tránh bottleneck khó chẩn đoán trong môi trường nhiều service. Cụ thể:

  • Lựa chọn loại mạng phù hợp: Bạn nên ưu tiên bridge cho các container cùng host, dùng overlay cho các service chạy trên nhiều node, và chỉ áp dụng host network cho các trường hợp yêu cầu độ trễ rất thấp vì kiểu mạng này gần như không tạo lớp cách ly.
  • Hạn chế số lượng container trên một network: Bạn không nên gom toàn bộ container vào một network duy nhất, vì điều này có thể làm DNS nội bộ quá tải và tăng chi phí broadcast, dẫn đến suy giảm hiệu suất.
  • Tắt các tính năng mạng không cần thiết: Nếu ứng dụng không dùng multicast, service discovery hoặc một số cơ chế discovery nâng cao, bạn nên tắt hoặc giới hạn chúng để giảm tải cho network stack và tiết kiệm tài nguyên
  • Điều chỉnh thông số MTU: Bạn nên cấu hình MTU thống nhất giữa các node, đặc biệt trong môi trường overlay, nhằm tránh phân mảnh gói tin và giữ tốc độ truyền dữ liệu ổn định hơn trong cluster.
  • Tối ưu phân giải DNS: Bạn có thể cài đặt DNS server nhanh, đáng tin cậy trong cấu hình Docker daemon và sử dụng caching để giảm thời gian tra cứu tên service trong mô hình microservices.
Hạn chế số lượng container trên một network
Hạn chế số lượng container trên một network (Nguồn: Internet)

So sánh Docker Network và Kubernetes Network

Docker Network và Kubernetes Network đều cung cấp mạng ảo cho container, hỗ trợ đặt IP riêng, phân giải DNS nội bộ, tách biệt traffic và cho phép các dịch vụ giao tiếp an toàn trong hạ tầng container hóa. Tuy nhiên, hai hệ thống được thiết kế cho mục tiêu khác nhau.

Docker tập trung vào kết nối container và cluster nhỏ hoặc vừa, trong khi Kubernetes hướng tới kiến trúc microservices quy mô lớn với mô hình IP-per-Pod và network policy chi tiết. Để giúp bạn hiểu rõ hơn về hai hệ thống này, dưới đây là bảng so sánh chi tiết:

Tiêu chíDocker NetworkKubernetes Network
Mục đích, quy môTập trung kết nối container trên một host hoặc trong Docker Swarm với cluster nhỏ đến trung bình; ưu tiên đơn giản, dễ cấu hình cho ứng dụng vừa và môi trường dev/test.Thiết kế cho hệ thống phân tán lớn, có thể mở rộng tới hàng trăm hay hàng nghìn node và Pod; phù hợp microservices phức tạp và môi trường production nhiều tenant.
Mô hình địa chỉ IPContainer thường nằm sau NAT trên bridge hoặc dùng IP nội bộ của Overlay Network; Swarm dùng overlay để container trên nhiều node nói chuyện qua VXLAN.Áp dụng mô hình IP-per-Pod (mỗi Pod một IP riêng, có thể định tuyến trong toàn cluster), Pod giao tiếp trực tiếp với Pod khác mà không cần NAT, tuân theo nguyên lý “flat network”.
Kiến trúc, công nghệ mạngCung cấp các network driver như bridge, host, overlay, macvlan, phù hợp cho single-host hoặc Swarm cần overlay tích hợp sẵn và service discovery cơ bản.Dựa trên CNI plugin (Container Network Interface) như Calico, Flannel, Weave, Cilium,… để triển khai routing, overlay, BGP, network policy và tích hợp cloud network nâng cao.
Service discovery và cân bằng tảiDocker Swarm có DNS nội bộ cho service name và built-in load balancing ở mức service, nhưng tính năng hạn chế hơn, ít abstraction hơn so với Kubernetes.Kubernetes cung cấp Service (ClusterIP, NodePort, LoadBalancer) kèm DNS nội bộ, kube-proxy và Ingress để cân bằng tải, định tuyến HTTP và expose dịch vụ ra ngoài.
Bảo mật mạngHỗ trợ phân tách mạng bằng nhiều network, có thể mã hóa overlay network trong Swarm, nhưng thường phải kết hợp thêm firewall, iptables và công cụ bên ngoài để có policy chi tiết.Hỗ trợ NetworkPolicy để kiểm soát luồng traffic Pod-to-Pod và Pod-to-Service theo namespace, label, port, đồng thời dễ tích hợp mã hóa, RBAC và cơ chế bảo mật nâng cao ở lớp cluster.
Quản lý và vận hànhQuản lý chủ yếu qua Docker CLI và Docker Compose; thao tác docker network create, connect, rm đơn giản, phù hợp cho team nhỏ, dự án gọn và hạ tầng ít node.Quản lý qua Kubernetes API và kubectl, tích hợp chặt với manifest YAML, controller và operator, cho phép tự động hóa cao và gắn với CI/CD, GitOps ở quy mô lớn.
Khả năng mở rộngThực tế phù hợp single-host hoặc cluster Swarm quy mô nhỏ đến trung bình; Overlay Network và control plane trở nên khó quản lý khi số node và service tăng mạnh.Thiết kế để mở rộng theo chiều ngang, hỗ trợ auto-scaling (HPA, VPA, Cluster Autoscaler) và nhiều cluster, vẫn giữ mô hình mạng thống nhất và có thể tích hợp multi-cloud.
Use case điển hìnhDev environment, POC, hệ thống nội bộ nhỏ, dịch vụ đơn giản chạy trên vài node hoặc trên một cụm Enterprise Cloud/VPS giới hạn.Nền tảng microservices, SaaS nhiều tenant, hệ thống có yêu cầu cao về HA, tự phục hồi, auto-scale và chính sách mạng chi tiết trên hạ tầng cloud hoặc Enterprise Cloud riêng.

Đối với mình, thay vì cố đẩy mọi dự án lên Kubernetes, bạn nên bắt đầu từ quy mô và độ phức tạp thực tế. Với hệ thống vừa và nhỏ, Docker Network + Compose/Swarm thường đủ đơn giản và hiệu quả, còn khi bạn cần multi-tenant, auto-scale và policy mạng chi tiết thì lúc đó mới là thời điểm hợp lý để chuyển sang Kubernetes.

Vietnix – Nhà cung cấp dịch vụ Enterprise Cloud và hạ tầng lưu trữ chất lượng cao

Vietnix là nhà cung cấp dịch vụ Enterprise Cloud, dịch vụ web hostingdịch vụ VPS chất lượng cao, mang đến nền tảng ổn định và linh hoạt cho doanh nghiệp triển khai các hệ thống công nghệ hiện đại. Với khả năng mở rộng tài nguyên theo nhu cầu, hiệu năng được tối ưu và hệ thống quản trị trực quan, Vietnix giúp bạn dễ dàng kiểm soát và vận hành hạ tầng một cách hiệu quả. Bên cạnh đó, đội ngũ kỹ thuật hỗ trợ liên tục giúp đảm bảo hệ thống luôn sẵn sàng, an toàn và đáp ứng tốt các yêu cầu phát triển lâu dài. Liên hệ ngay!

Thông tin liên hệ:

  • Website: https://vietnix.vn/
  • Hotline: 1800 1093
  • Email: sales@vietnix.com.vn
  • Địa chỉ: 265 Hồng Lạc, Phường Bảy Hiền, Thành Phố Hồ Chí Minh

Câu hỏi thường gặp

Docker Network bridge có an toàn cho production không?

Bridge Network có thể dùng trong production nếu bạn cấu hình tách mạng rõ ràng, không để tất cả container chung một bridge mặc định và kết hợp thêm firewall, rule chặn truy cập không cần thiết. Bạn nên ưu tiên user-defined bridge network theo từng nhóm service, hạn chế expose port trực tiếp từ container ra Internet và tuân thủ các khuyến nghị bảo mật Docker Engine (namespace, capability, không chạy container với đặc quyền không cần thiết).

Làm sao kết nối container với database ngoài Docker host?

Bạn cần cấu hình ứng dụng trong container trỏ tới IP hoặc hostname của máy chạy database (hoặc load balancer) thay vì dùng localhost, đồng thời đảm bảo database cho phép kết nối từ IP của Docker host. Ở Docker, localhost bên trong container là container đó, nên connection string phải dùng dạng như jdbc:mysql://192.168.x.x:3306/dbname hoặc domain tương ứng, kèm mở port và cấu hình firewall trên máy chứa database để chấp nhận truy cập từ host chạy container.

Overlay network cần điều kiện gì để chạy Swarm?

Để overlay network hoạt động trong Docker Swarm, tất cả node trong swarm phải liên lạc được với nhau qua các port quản lý và data path, điển hình là TCP/UDP 7946 cho discovery và UDP 4789 cho VXLAN overlay traffic, cùng port 2377 TCP cho cluster management. Bạn cần mở các port này trên firewall giữa các node, đảm bảo chúng dùng chung mạng IP có thể định tuyến và nếu bật --opt encrypted cho overlay thì phải cho phép thêm traffic IP protocol 50 (ESP) để dữ liệu được mã hóa giữa các node.

Tóm lại, Docker Network cung cấp nhiều lựa chọn về mô hình mạng từ bridge, host, overlay, macvlan đến none để bạn xây dựng môi trường container vừa linh hoạt vừa an toàn. Khi nắm vững cách tạo, kiểm tra và tối ưu network, cũng như hiểu sự khác biệt với mạng trong Kubernetes, bạn sẽ dễ thiết kế kiến trúc phù hợp cho từng quy mô hệ thống, từ single-host đến cluster phân tán nhiều node. Cảm ơn bạn đã theo dõi bài viết!

THEO DÕI VÀ CẬP NHẬT CHỦ ĐỀ BẠN QUAN TÂM

Đăng ký ngay để nhận những thông tin mới nhất từ blog của chúng tôi. Đừng bỏ lỡ cơ hội truy cập kiến thức và tin tức hàng ngày

Đánh giá mức độ hữu ích của bài viết

icon 1 sao

Thất vọng

icon 2 sao

Chưa hữu ích

icon 3 sao

Bình thường

icon 4 sao

Hữu ích

icon 5 sao

Rất hữu ích

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận

BÀI VIẾT LIÊN QUAN

lap-trinh

devops-he-thong-va-server

text
icon popup single post

CẢM ƠN BẠN ĐÃ ĐÁNH GIÁ BÀI VIẾT

Vietnix sẽ luôn cố gắng cải thiện chất lượng dịch vụ mỗi ngày

ĐÓNG

Đánh giá mức độ hữu ích của bài viết

icon 1 sao

Thất vọng

icon 2 sao

Chưa hữu ích

icon 3 sao

Bình thường

icon 4 sao

Hữu ích

icon 5 sao

Rất hữu ích

Icon
ĐĂNG KÝ NHẬN TÀI LIỆU THÀNH CÔNG
Cảm ơn bạn đã đăng ký nhận tài liệu mới nhất từ Vietnix!
ĐÓNG

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1
Icon
XÁC NHẬN ĐĂNG KÝ DÙNG THỬ THÀNH CÔNG
Cảm ơn bạn đã đăng ký thông tin thành công. Đội ngũ CSKH sẽ liên hệ trực tiếp để kích hoạt dịch vụ cho bạn nhanh nhất!
ĐÓNG