Trang chủ Thủ Thuật Cách gán IP tĩnh cho vùng chứa Docker

Cách gán IP tĩnh cho vùng chứa Docker

0
34

Cách gán IP tĩnh cho vùng chứa Docker

993634a1 1

Địa chỉ IP tĩnh không thay đổi khi các vùng chứa hoặc dịch vụ được dừng và khởi động, giúp chúng hữu ích cho việc kết nối mạng vĩnh viễn. Chỉ định địa chỉ IP tĩnh cho vùng chứa Docker là một cách dễ dàng để làm cho chúng dễ truy cập hơn.

Tại sao sử dụng IP tĩnh?

Có hai loại “IP tĩnh”; địa chỉ IP riêng được sử dụng cho mạng nội bộ bên trong máy chủ và địa chỉ IP công cộng được sử dụng để kết nối bên ngoài máy chủ, thường qua internet.

Nếu bạn cần thiết lập địa chỉ IP công cộng cho vùng chứa, bạn sẽ muốn sử dụng các ràng buộc cổng. Bạn có thể “xuất bản” các cổng trên vùng chứa Docker để có thể truy cập từ máy chủ. Mặc dù có nhiều thiết lập mạng nâng cao hơn, nhưng đây là cách dễ nhất và phổ biến nhất. Ví dụ: liên kết cổng 80 (HTTP) trên máy chủ để trỏ đến vùng chứa NGINX:

docker run --publish = 80: 8080 nginx

Nếu bạn muốn tạo một địa chỉ IP riêng tư tĩnh, bạn nên cân nhắc xem bạn có cần sử dụng một địa chỉ IP nào không. Hầu hết thời gian, bạn sẽ muốn một IP tĩnh để nói chuyện với một vùng chứa từ một vùng chứa khác hoặc từ máy chủ lưu trữ. Trong hầu hết các trường hợp, mạng tích hợp của Docker có thể xử lý điều này.

Docker đi kèm với một mạng mặc định, nhưng nếu bạn tự tạo, bạn có thể đặt bí danh cho vùng chứa khi khởi chạy trong mạng đó. Bí danh này sẽ tự động chuyển thành IP riêng của vùng chứa. Ví dụ: vùng chứa NGINX ở đây có thể truy cập cá thể MongoDB bằng chuỗi kết nối mongodb://mongohost:27017 .

mạng docker tạo ví dụ
docker run --net example --name nginx -d nginx
ví dụ kết nối mạng docker --alias mongohost mongodb
Quảng cáo

Để tìm hiểu thêm, bạn có thể đọc tài liệu của Docker về mạng cầu nối do người dùng xác định.

Tuy nhiên, vẫn có nhiều lúc bạn muốn chỉ định địa chỉ IP riêng theo cách thủ công, chẳng hạn như truy cập vùng chứa trực tiếp từ máy chủ. Bạn vẫn cần sử dụng mạng Docker tùy chỉnh để làm như vậy, nhưng rất dễ thiết lập.

Thiết lập IP tĩnh

Trước tiên, bạn sẽ cần thiết lập mạng Docker và vì chúng tôi quan tâm đến địa chỉ IP, bạn sẽ cần chỉ định một mạng con cố định:

mạng docker tạo --subnet = 172.20.0.0 / 16 customnetwork

LIÊN QUAN: Mạng con là gì và chúng ảnh hưởng đến mạng của tôi như thế nào?

Sau đó, bạn có thể chạy một vùng chứa, chỉ định mạng bằng --net và chỉ định IP với cờ -ip

docker run --net customnetwork --ip 172.20.0.10 -d container

Bạn có thể xác minh địa chỉ là chính xác bằng cách kiểm tra địa chỉ đó trong vùng chứa với tệp thực thi exec -t bin/bash hoặc bằng cách kiểm tra danh sách vùng chứa Docker:

thanh tra docker -f '{{range.NetworkSettings.Networks}} {{. IPAddress}} {{end}}' name_or_id

Sử dụng Docker Compose

Docker Compose là một công cụ được sử dụng để khởi chạy nhiều vùng chứa với các cài đặt được xác định trước. Điều này bao gồm thiết lập mạng với các mạng con cụ thể và bạn có thể đính kèm vùng chứa vào mạng có IP cố định bằng cách sử dụng ipv4_address được hiển thị ở đây:

phiên bản: '2'
dịch vụ:
  máy chủ web:
    hình ảnh: nginx
    container_name: web-server
    mạng:
      customnetwork:
        ipv4_address: 172.20.0.10
mạng:
  customnetwork:
    ipam:
      cấu hình:
        - mạng con: 172.20.0.0/16

How to Remove Git Version Tracking from a Folder

Cách xóa theo dõi phiên bản Git khỏi thư mục

How to Add HTTP Basic Authentication to a Kubernetes NGINX Ingress

Cách thêm xác thực HTTP cơ bản vào Kubernetes NGINX Ingress

How to Remove Git Version Tracking from a Folder

Cách chuyển đổi, thêm và xóa Git Remotes

How to Scan for Kubernetes Vulnerabilities With Kubescape

Cách quét lỗ hổng Kubernetes với Kubescape

How to Scan QR Codes in Web Browsers With Web Workers and jsQR

Cách quét mã QR trong trình duyệt web với nhân viên web và jsQR

Why the Google-Backed Secure Open Source Program is So Important

Tại sao Chương trình nguồn mở an toàn do Google hậu thuẫn lại quan trọng đến vậy

Dịch từ: https://www.cloudsavvyit.com/14508/how-to-assign-a-static-ip-to-a-docker-container/

Hãy giúp chúng tôi đánh giá bài viết này!

BÌNH LUẬN

Vui lòng nhập bình luận của bạn
Vui lòng nhập tên của bạn ở đây