1. Overlay Network là gì?
- Là network driver tạo ra mạng phân tán trên nhiều node Docker.
- Cho phép container trên các host khác nhau giao tiếp bảo mật.
- Swarm quản lý route: từ public IP manager → container đích.
- Mặc định khi khởi tạo swarm:
- ingress network: overlay, cho control & data traffic.
- docker_gwbridge: bridge network, kết nối daemon nội bộ.
2. Kiểm tra Networks hiện có
docker network ls
- ingress → driver overlay, scope swarm.
- docker_gwbridge → driver bridge.
3. Tạo Overlay Network
docker network create -d overlay my_overlay
d overlay: chọn overlay driver.my_overlay: tên network.
Kiểm tra:
docker network ls
4. Tạo Overlay Network có mã hoá
docker network create -d overlay --opt encrypted encrypted_overlay
Kiểm tra:
docker network inspect encrypted_overlay
- Thấy mục
"Options": {"encrypted": "true"}.
5. Tạo Service gắn Overlay Network
docker service create -d --name nginx_overlay \
--network my_overlay \
-p 8081:80 \
--replicas 2 nginx:latest
6. Thêm Network vào service cũ
docker service update --network-add my_overlay nginx_service
- Kiểm tra:
docker service inspect nginx_service
- Trong VirtualIPs sẽ có cả ingress & my_overlay.
7. Xoá Network khỏi service
docker service update --network-rm my_overlay nginx_service
8. Xoá Overlay Network
docker network rm encrypted_overlay
9. Tuỳ biến ingress network
- Có thể xoá & tạo lại ingress network với
-ingressflag. - Cẩn thận: nếu không thiết lập đúng có thể gây lỗi toàn swarm.
10. Recap
| Thao tác | Lệnh |
|---|---|
| Tạo overlay network | docker network create -d overlay <name> |
| Mã hoá network | Thêm --opt encrypted |
| Thêm network vào service | docker service update --network-add |
| Xoá network khỏi service | docker service update --network-rm |
| Xoá network | docker network rm |