Rangkaian kontena docker di bawah Linux: Bagaimana untuk menyediakan sambungan rangkaian dan komunikasi antara bekas?
Apabila menggunakan Docker untuk penggunaan aplikasi, sambungan rangkaian dan komunikasi antara bekas adalah isu yang sangat penting. Artikel ini akan memperkenalkan cara menyediakan sambungan rangkaian bekas dalam persekitaran Linux dan menyediakan beberapa contoh kod biasa.
Terdapat berbilang mod rangkaian untuk dipilih dalam Docker, tiga yang paling biasa digunakan ialah: mod jambatan, mod hos dan mod rangkaian Tindanan. Dalam mod jambatan, Docker akan mencipta antara muka rangkaian maya untuk setiap bekas dan menyambungkan bekas melalui jambatan rangkaian kongsi. Dalam mod hos, bekas akan terus menggunakan antara muka rangkaian hos. Mod rangkaian Tindanan menyediakan penyelesaian untuk komunikasi kontena merentas hos.
Mula-mula, mari perkenalkan cara menyediakan sambungan rangkaian kontena menggunakan mod jambatan. Kita boleh menggunakan alat baris arahan Docker atau Docker Compose untuk mencapai ini.
Menggunakan alat baris arahan:
docker run -d --name container1 --network bridge image1 docker run -d --name container2 --network bridge image2
Menggunakan Docker Compose:
version: '3' services: container1: image: image1 networks: - bridge container2: image: image2 networks: - bridge networks: bridge: driver: bridge
Dalam contoh di atas, kami mencipta dua bekas container1 dan container2 dan menyambungkannya ke rangkaian yang dipanggil bridge. Dengan persediaan ini, bekas boleh berkomunikasi antara satu sama lain menggunakan nama bekas.
Berikut ialah contoh menyediakan sambungan rangkaian kontena menggunakan mod hos:
Menggunakan alat baris arahan:
docker run -d --name container1 --network host image1 docker run -d --name container2 --network host image2
Menggunakan Docker Compose:
version: '3' services: container1: image: image1 networks: - host container2: image: image2 networks: - host networks: host: driver: host
Dalam persediaan ini, bekas akan menggunakan antara muka rangkaian hos secara langsung, jadi mereka Komunikasi boleh dijalankan melalui alamat IP hos.
Akhir sekali, kami memperkenalkan tetapan untuk komunikasi antara bekas menggunakan mod rangkaian Tindanan. Mod ini memerlukan penggunaan menggunakan Docker Swarm.
Pertama, kita perlu memulakan Swarm:
docker swarm init
Kemudian, kami mencipta rangkaian Tindanan:
docker network create -d overlay my-network
Seterusnya, kami mencipta perkhidmatan dan menyambungkannya ke rangkaian:
docker service create --name service1 --network my-network image1 docker service create --name service2 --network my-network image2
Menggunakan mod rangkaian Tindanan boleh mencapai rentas- hos Komunikasi kontena dan memastikan keselamatan dan kebolehpercayaan komunikasi.
Ringkasnya, artikel ini memperkenalkan kaedah menyediakan sambungan rangkaian dan komunikasi bekas Docker dalam persekitaran Linux, termasuk mod jambatan, mod hos dan mod rangkaian Tindanan. Kaedah ini boleh dipilih dan digunakan mengikut keperluan khusus untuk membantu kami mengurus rangkaian kontena dengan lebih baik apabila menggunakan Docker.
Contoh kod adalah untuk rujukan sahaja. Sila buat pelarasan dan konfigurasi yang sepadan mengikut situasi tertentu semasa penggunaan sebenar. Melalui tetapan rangkaian yang fleksibel, kami boleh membina sistem aplikasi kontena yang cekap dan boleh dipercayai dengan mudah.
Atas ialah kandungan terperinci Rangkaian kontena Docker di bawah Linux: Bagaimana untuk menyediakan sambungan rangkaian dan komunikasi antara bekas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!