Rumah Operasi dan penyelenggaraan Docker Cara menggunakan rangkaian maya docker

Cara menggunakan rangkaian maya docker

Apr 19, 2023 am 09:15 AM

Docker ialah salah satu platform kontena paling popular pada masa ini, yang boleh memudahkan penggunaan dan pengurusan aplikasi. Salah satu ciri yang paling penting ialah rangkaian maya Docker, yang membantu pengguna mencipta berbilang bekas pada mesin fizikal yang berasingan dan bekerja secara kolaboratif sambil menyediakan pengasingan dan keselamatan rangkaian yang baik.

Dalam artikel ini, kami akan memperkenalkan cara menggunakan rangkaian maya docker untuk membina komunikasi dan kebolehoperasian rangkaian antara bekas, dan juga memperkenalkan kepentingan pengasingan dan keselamatan rangkaian.

  1. Buat dan urus rangkaian maya docker

Pertama, kita perlu mencipta rangkaian maya docker. Anda boleh menggunakan arahan berikut untuk mencipta rangkaian maya bernama "my-network":

docker network create my-network
Salin selepas log masuk

Selepas mencipta rangkaian, anda boleh menggunakan arahan berikut untuk menyenaraikan rangkaian maya docker semasa:

docker network ls
Salin selepas log masuk

Hasil yang dijalankan adalah seperti berikut:

NETWORK ID          NAME                DRIVER              SCOPE
6e8c0391c9ac        bridge              bridge              local
a8a551c45849        host                host                local
d6a050011a56        my-network          bridge              local
69f86bb8f6bc        none                null                local
Salin selepas log masuk

Kini kami telah mencipta rangkaian maya bernama "rangkaian saya", yang boleh digunakan untuk mencipta bekas dan berkomunikasi.

  1. Sambungkan bekas ke rangkaian maya docker

Seterusnya, kami akan mencipta dua bekas dan menyambungkannya ke rangkaian maya "rangkaian saya" yang baru kami buat . Kami menggunakan parameter --network untuk menyambungkan bekas ke rangkaian maya.

Gunakan arahan berikut untuk memulakan bekas bernama "pelayan web" dan sambungkannya ke rangkaian maya:

docker run --name webserver --network my-network -p 8080:80 -d nginx
Salin selepas log masuk

Dalam arahan di atas, kami menggunakan imej "nginx" untuk Mencipta kami bekas. -pParameter memetakan port bekas docker "80" ke port mesin fizikal "8080".

Kami juga boleh mencipta bekas kedua dan menyambungkannya ke rangkaian maya menggunakan kaedah yang serupa:

docker run --name database --network my-network -e MYSQL_ROOT_PASSWORD=password -d mysql
Salin selepas log masuk

Dalam arahan di atas, kami menggunakan imej "mysql" untuk mencipta bekas kami dan tetapkan kata laluan akar MySQL.

Kini kami telah mencipta dua bekas dan menyambungkannya ke rangkaian maya yang kami cipta.

  1. Menguji komunikasi antara bekas

Untuk menguji bahawa kontena kami berjaya berkomunikasi, kami boleh menggunakan halaman HTML ringkas dalam "pelayan web".

Mula-mula, kita masuk ke dalam bekas "pelayan web" dan pasang penyunting teks nano menggunakan arahan berikut:

docker exec -it webserver apt-get update
docker exec -it webserver apt-get install nano
Salin selepas log masuk

Kemudian, kami mencipta halaman index.html mudah menggunakan teks nano editor:

docker exec -it webserver nano /usr/share/nginx/html/index.html
Salin selepas log masuk

Dalam halaman, kami menambah kandungan berikut:

<!DOCTYPE html>
<html>
<head>
<title>Welcome to my website</title>
</head>
<body>
<p>Hello from webserver!</p>
<?php
$servername = "database";
$username = "root";
$password = "password";

// Create connection
$conn = new mysqli($servername, $username, $password);

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 
echo "Connected successfully to database";
?>
</body>
</html>
Salin selepas log masuk

Dalam kod di atas, kami menambah mesej teks pada halaman dan skrip PHP untuk disambungkan ke pangkalan data MySQL "pangkalan data" dalam bekas.

Sekarang, kita hanya boleh menggunakan URL berikut pada penyemak imbas web mesin fizikal untuk membuka halaman:

http://127.0.0.1:8080
Salin selepas log masuk

Halaman akan menunjukkan "Hello dari pelayan web dan sambungan berjaya maklumat.

Sementara itu, jika kita menjalankan arahan "docker log database" pada bekas "database", kita akan melihat output berikut:

...
Version: '5.7.22'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  MySQL Community Server (GPL)
2019-05-22T20:02:24.809716Z 0 [Note] Event Scheduler: Loaded 0 events
Connected successfully to database
Salin selepas log masuk

Ini menunjukkan bahawa komunikasi antara kedua-dua bekas OK, dan halaman ujian kami boleh berjaya menyambung ke pangkalan data MySQL pada bekas "pangkalan data".

  1. Pengasingan dan keselamatan rangkaian

Satu lagi peranan penting rangkaian maya docker ialah menyediakan pengasingan dan keselamatan rangkaian antara bekas yang berbeza. Contohnya, jika kami menjalankan kod hasad dalam bekas "pelayan web", ia tidak akan dapat mengakses dan menjejaskan bekas lain.

Selain itu, kami juga boleh menggunakan rangkaian maya docker untuk menyekat akses kontena ke rangkaian luaran. Sebagai contoh, kami boleh meningkatkan keselamatan aplikasi kami dengan mencipta rangkaian maya dan memastikan bahawa bekas hanya boleh berkomunikasi dengan bekas lain dalam rangkaian itu dan tidak boleh mengakses bekas lain di Internet.

  1. Ringkasan

Dalam artikel ini, kami memperkenalkan cara menggunakan rangkaian maya docker untuk menyambungkan bekas yang berbeza dan membolehkan komunikasi antara bekas. Kami juga mempelajari cara rangkaian maya docker menyediakan pengasingan dan keselamatan rangkaian.

Rangkaian maya ialah ciri yang sangat penting dalam docker, yang boleh digunakan untuk membina aplikasi kontena yang berkuasa dan menyediakan keselamatan yang baik. Jika anda membina aplikasi menggunakan docker, pastikan anda mempertimbangkan menggunakan rangkaian maya untuk meningkatkan keselamatan dan kecekapan aplikasi anda.

Atas ialah kandungan terperinci Cara menggunakan rangkaian maya docker. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Soalan Temuduga Docker: Ace Wawancara Kejuruteraan DevOps Anda Soalan Temuduga Docker: Ace Wawancara Kejuruteraan DevOps Anda Apr 06, 2025 am 12:01 AM

Docker adalah kemahiran yang mesti ada untuk jurutera DevOps. 1.Docker adalah platform kontena sumber terbuka yang mencapai pengasingan dan mudah alih dengan aplikasi pembungkusan dan kebergantungan mereka ke dalam bekas. 2. Docker bekerja dengan ruang nama, kumpulan kawalan dan sistem fail bersekutu. 3. Penggunaan asas termasuk mencipta, menjalankan dan menguruskan bekas. 4. Penggunaan lanjutan termasuk menggunakan DockerCompose untuk menguruskan aplikasi multi-kontainer. 5. Kesilapan umum termasuk kegagalan kontena, masalah pemetaan pelabuhan, dan masalah ketekunan data. Kemahiran penyahpepijatan termasuk log melihat, memasukkan bekas, dan melihat maklumat terperinci. 6. Pengoptimuman prestasi dan amalan terbaik termasuk pengoptimuman imej, kekangan sumber, pengoptimuman rangkaian dan amalan terbaik untuk menggunakan Dockerfile.

Jilid Docker: Menguruskan data berterusan dalam bekas Jilid Docker: Menguruskan data berterusan dalam bekas Apr 04, 2025 am 12:19 AM

Dockervolumes memastikan data tetap selamat apabila bekas dimulakan semula, dipadam, atau berhijrah. 1. Buat Jilid: DockervolumecreatemyData. 2. Jalankan bekas dan gunung: dockerrun-it-vmydata:/app/dataubuntubash. 3. Penggunaan lanjutan termasuk perkongsian data dan sandaran.

Cara mengemas kini imej Docker Cara mengemas kini imej Docker Apr 15, 2025 pm 12:03 PM

Langkah -langkah untuk mengemas kini imej Docker adalah seperti berikut: Tarik tag imej terkini imej baru memadam imej lama untuk tag tertentu (pilihan) mulakan semula bekas (jika diperlukan)

Cara keluar dari bekas dengan Docker Cara keluar dari bekas dengan Docker Apr 15, 2025 pm 12:15 PM

Empat cara untuk keluar dari Docker Container: Gunakan Ctrl D di terminal kontena masukkan perintah keluar di terminal kontena Gunakan Docker Stop & lt; container_name & gt; Perintah Gunakan Docker Kill & lt; container_name & gt; Perintah di terminal tuan rumah (keluar kuasa)

Cara memulakan semula Docker Cara memulakan semula Docker Apr 15, 2025 pm 12:06 PM

Cara memulakan semula bekas Docker: Dapatkan ID Container (Docker PS); Hentikan bekas (Docker Stop & lt; container_id & gt;); Mulakan bekas (Docker Start & lt; container_id & gt;); Sahkan bahawa permulaan semula berjaya (Docker PS). Kaedah lain: Docker mengarang (Docker-Compose Restart) atau Docker API (lihat Dokumentasi Docker).

Cara menyalin fail di Docker ke luar Cara menyalin fail di Docker ke luar Apr 15, 2025 pm 12:12 PM

Kaedah untuk menyalin fail ke tuan rumah luaran di Docker: Gunakan arahan CP Docker: Jalankan Docker CP [Options] & lt; Container Path & GT; & lt; PATH HOST & GT;. Menggunakan jumlah data: Buat direktori pada tuan rumah, dan gunakan parameter -V parameter untuk memasang direktori ke dalam bekas apabila membuat bekas untuk mencapai penyegerakan fail bidirectional.

Docker Security Hardening: Melindungi bekas anda dari kelemahan Docker Security Hardening: Melindungi bekas anda dari kelemahan Apr 05, 2025 am 12:08 AM

Kaedah Peningkatan Keselamatan Docker termasuk: 1. Gunakan parameter-cap-drop untuk menghadkan keupayaan Linux, 2. Buat bekas baca sahaja, 3 set tag Selinux. Strategi ini melindungi bekas dengan mengurangkan pendedahan kelemahan dan mengehadkan keupayaan penyerang.

Cara memeriksa nama bekas Docker Cara memeriksa nama bekas Docker Apr 15, 2025 pm 12:21 PM

Anda boleh menanyakan nama kontena Docker dengan mengikuti langkah -langkah: Senaraikan semua bekas (Docker PS). Tapis senarai kontena (menggunakan arahan grep). Mendapat nama kontena (terletak di lajur "Nama").

See all articles