Docker ialah platform virtualisasi sumber terbuka yang boleh mencapai pengasingan aplikasi dan konsistensi persekitaran melalui bekas. Teknologi ini telah digunakan secara meluas dalam pelbagai senario aplikasi, terutamanya dalam pembangunan dan penggunaan aplikasi asli awan.
Apabila kami menggunakan bekas Docker, kadangkala kami perlu menetapkan alamat IP tetap untuk bekas Ini boleh memudahkan komunikasi antara program luaran dan bekas dan mengelakkan masalah yang disebabkan oleh perubahan alamat IP selepas bekas itu dimulakan semula. Artikel ini akan memperkenalkan cara untuk menetapkan alamat IP bekas Docker.
1. Mod rangkaian Docker
Dalam Docker, terdapat pelbagai mod rangkaian untuk dipilih, termasuk Bridge, Host, Overlay, Macvlan, dsb. Antaranya, Bridge ialah mod yang paling biasa digunakan kerana ia boleh mengasingkan rangkaian antara bekas dan hos dengan berkesan. Secara lalai, setiap bekas Docker diberikan alamat IP, yang datang daripada pelayan DHCP rangkaian Bridge. Tetapi kadangkala, kita perlu membetulkan alamat IP bekas untuk memenuhi senario aplikasi tertentu.
2. Tetapkan alamat IP bekas
Terdapat dua cara untuk menetapkan alamat IP bekas: alamat IP statik dan alamat IP dinamik. Mula-mula, mari kita perkenalkan cara menetapkan alamat IP statik untuk bekas Docker.
1. Buat rangkaian Bridge tersuai
Apabila membuat rangkaian Bridge tersuai, anda perlu menentukan segmen rangkaian dan subnet mask rangkaian. Contohnya:
docker network create --driver=bridge --subnet=172.25.0.0/16 mybridge
Arahan ini akan mencipta rangkaian Bridge tersuai bernama mybridge dan menetapkan segmen alamat IPnya kepada 172.25.0.0/16. Seterusnya, kami mencipta bekas Docker dalam rangkaian ini.
2. Cipta bekas dan tetapkan alamat IP statik
Anda boleh menentukan alamat IP statik untuk bekas dengan menambah pilihan --ip pada baris arahan. Contohnya:
docker run -itd --name=mycontainer --network=mybridge --ip=172.25.0.2 busybox
Arahan ini akan mencipta bekas bernama mycontainer dan menetapkan alamat IPnya kepada 172.25.0.2. Ambil perhatian bahawa bekas mesti berada dalam rangkaian mybridge, jika tidak alamat IP statik tidak boleh ditetapkan.
3. Sahkan sama ada tetapan alamat IP berkesan
Kami boleh melaksanakan arahan berikut di dalam bekas untuk mengesahkan sama ada alamat IP berkesan:
ip addr show eth0
Jika IPv4 dipaparkan dalam hasil output Alamat ialah 172.25.0.2, menunjukkan bahawa alamat IP berjaya ditetapkan.
3. Konfigurasi alamat IP Dinamik
Kaedah di atas ialah contoh menetapkan alamat IP statik untuk bekas, yang sesuai untuk senario di mana alamat IP yang sama perlu sentiasa digunakan. Walau bagaimanapun, dalam beberapa senario, bekas perlu memperuntukkan alamat IP secara dinamik Dalam kes ini, pelayan DHCP boleh digunakan untuk menetapkan alamat IP kepada bekas.
1. Buat rangkaian Bridge tersuai
Anda juga perlu mencipta rangkaian Bridge tersuai Arahan khusus adalah sama seperti di atas.
2. Cipta bekas dan tetapkan alamat IP dinamik
Apabila membuat bekas, anda hanya perlu menukar pilihan --ip kepada pilihan --net-alias. Contohnya:
docker run -itd --name=mycontainer2 --network=mybridge --net-alias=mycontainer2 busybox
Arahan ini akan mencipta bekas bernama mycontainer2 dan mengkonfigurasi alias dengan net-alias sebagai mycontainer2 di dalamnya. Dengan cara ini, bekas boleh menggunakan alias ini untuk menyediakan perkhidmatan kepada dunia luar, dan pelayan DHCP akan memberikan alamat IP kepada bekas.
3. Sahkan sama ada tetapan alamat IP berkesan
Kami boleh melaksanakan arahan berikut di dalam bekas untuk mengesahkan sama ada alamat IP berkesan:
ip addr show eth0
Jika output menunjukkan dinamik Alamat IPv4 yang diberikan menunjukkan bahawa alamat IP berjaya ditetapkan.
4. Ringkasan
Melalui kaedah di atas, kami boleh menetapkan alamat IP statik dan alamat IP dinamik untuk bekas Docker. Dalam aplikasi praktikal, kaedah peruntukan alamat IP yang berbeza perlu dipilih mengikut keperluan khusus. Melalui konfigurasi ini, kami boleh menggunakan bekas Docker dengan lebih fleksibel, meningkatkan ketersediaan dan kestabilan aplikasi serta memenuhi keperluan perniagaan dengan lebih baik.
Atas ialah kandungan terperinci Bagaimana untuk menetapkan ip untuk bekas docker. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!