Bagaimana untuk mengkonfigurasi rangkaian kontena pada Linux

王林
Lepaskan: 2023-07-05 15:33:07
asal
811 orang telah melayarinya

Cara mengkonfigurasi rangkaian kontena pada Linux

Dalam era pengkomputeran awan hari ini, teknologi kontena semakin digemari oleh pembangun. Sebagai platform kontena paling popular pada masa ini, Docker menyediakan kami kaedah pengurusan kontena yang mudah dan cekap. Konfigurasi rangkaian bekas juga amat penting dalam penggunaan aplikasi kontena. Dalam artikel ini, kami akan memperkenalkan cara untuk mengkonfigurasi rangkaian kontena pada Linux untuk memudahkan komunikasi antara kontena dan interkoneksi dengan dunia luar.

1. Fahami mod rangkaian

Docker menyediakan pelbagai mod rangkaian untuk dipilih Kita perlu memilih kaedah yang sesuai mengikut keperluan sebenar.

  1. Bridge (mod jambatan): Mod lalai, mencipta rangkaian maya (bridge) dan menghubungkan setiap bekas ke rangkaian ini. Bekas boleh berkomunikasi dalam rangkaian ini menggunakan alamat IP mereka sendiri.
  2. Hos (mod hos): Bekas dan hos berkongsi rangkaian, dan bekas terus menggunakan alamat IP dan antara muka rangkaian hos.
  3. Tindan (rangkaian tindanan): Mod rangkaian yang digunakan dalam persekitaran Docker berbilang hos boleh mencapai komunikasi kontena silang hos.
  4. MacVlan (MAC VLAN): Bekas dikaitkan dengan antara muka alamat MAC tertentu dalam rangkaian fizikal dan terus memperoleh alamat rangkaian fizikal sebenar.

2. Konfigurasikan rangkaian mod jambatan

Mod jambatan ialah kaedah konfigurasi rangkaian yang paling biasa digunakan untuk Docker, yang boleh merealisasikan komunikasi antara bekas semasa mengasingkan daripada rangkaian luaran. Berikut ialah langkah-langkah untuk mengkonfigurasi rangkaian mod bridged.

  1. Buat rangkaian
$ docker network create mynetwork
Salin selepas log masuk
  1. Mulakan bekas
$ docker run -d --name mycontainer --network mynetwork nginx
Salin selepas log masuk
Salin selepas log masuk

Arahan di atas akan memulakan bekas bernama mycontainer dan menambahkannya ke rangkaian mynetwork.

  1. Komunikasi antara bekas

Bekas dalam rangkaian yang sama boleh berkomunikasi menggunakan nama kontena dan nama kontena boleh diselesaikan ke alamat IP yang sepadan.

$ docker exec -it mycontainer1 ping mycontainer2 
Salin selepas log masuk

Anda boleh menggunakan arahan ini untuk ping bekas lain dari dalam bekas.

3. Konfigurasikan rangkaian mod hos

Rangkaian mod hos membenarkan bekas menggunakan antara muka rangkaian dan alamat IP hos, jadi bekas dan hos berkongsi ruang nama rangkaian. Berikut ialah langkah-langkah untuk mengkonfigurasi rangkaian mod hos.

  1. Mulakan bekas
$ docker run -d --name mycontainer --network host nginx
Salin selepas log masuk

Arahan di atas akan memulakan bekas bernama mycontainer dan menggunakannya terus ke rangkaian hos.

  1. Komunikasi kontena dan hos

Dalam mod hos, kontena terus menggunakan antara muka rangkaian hos dan alamat IP untuk berkomunikasi dengan hos.

$ docker exec -it mycontainer ping localhost 
Salin selepas log masuk

Arahan di atas boleh ping alamat hos dalam bekas.

4. Konfigurasikan rangkaian tindanan

Rangkaian tindanan biasanya digunakan untuk mencapai komunikasi kontena rentas hos dalam persekitaran Docker berbilang nod. Berikut ialah langkah-langkah untuk mengkonfigurasi rangkaian tindanan.

  1. Buat rangkaian
$ docker network create -d overlay mynetwork
Salin selepas log masuk
  1. Mulakan bekas
$ docker service create --name myservice --network mynetwork nginx
Salin selepas log masuk

Gunakan arahan di atas untuk menambah perkhidmatan ke rangkaian mynetwork semasa menciptanya.

  1. Komunikasi antara bekas

Dalam rangkaian tindanan, nama perkhidmatan boleh digunakan untuk komunikasi antara bekas.

$ docker exec -it mycontainer1 ping myservice 
Salin selepas log masuk

Arahan di atas boleh ping perkhidmatan dalam bekas.

5. Konfigurasikan rangkaian MAC VLAN

Mod rangkaian MAC VLAN mengaitkan bekas dengan alamat MAC antara muka dalam rangkaian fizikal, dan boleh terus mendapatkan alamat rangkaian fizikal sebenar. Berikut ialah langkah-langkah untuk mengkonfigurasi rangkaian MAC VLAN.

  1. Buat rangkaian
$ docker network create -d macvlan --subnet=192.168.1.0/24 --gateway=192.168.1.1 -o parent=eth0 mynetwork
Salin selepas log masuk
  1. Mulakan bekas
$ docker run -d --name mycontainer --network mynetwork nginx
Salin selepas log masuk
Salin selepas log masuk

Gunakan arahan di atas untuk menambah bekas ke rangkaian mynetwork semasa menciptanya.

  1. Bekas berkomunikasi dengan rangkaian fizikal

Dalam rangkaian MAC VLAN, bekas boleh berkomunikasi secara langsung menggunakan antara muka rangkaian fizikal.

$ docker exec -it mycontainer ping 192.168.1.2 
Salin selepas log masuk

Arahan di atas boleh ping alamat dalam rangkaian fizikal dalam bekas.

Ringkasan

Melalui pengenalan di atas, kami memahami cara mengkonfigurasi rangkaian kontena pada Linux. Mengikut keperluan sebenar, kita boleh memilih mod rangkaian yang sesuai dan mengkonfigurasinya mengikut langkah yang sepadan. Konfigurasi rangkaian sangat penting untuk penggunaan dan pengendalian aplikasi kontena. Saya harap artikel ini dapat membantu anda.

Atas ialah kandungan terperinci Bagaimana untuk mengkonfigurasi rangkaian kontena pada Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan