Contoh rangkaian asas mengenai cara menghubungkan bekas Docker
- 3866
- 423
- Daryl Wilderman
Salah satu daripada banyak ciri yang diinginkan yang dibina terus ke Docker adalah rangkaian. Ciri rangkaian Docker boleh diakses dengan menggunakan a --pautan
Bendera yang membolehkan untuk menyambungkan sebilangan bekas Docker tanpa perlu mendedahkan pelabuhan dalaman bekas ke dunia luar.
Dalam panduan ini, anda akan belajar bagaimana untuk rangkaian dua atau lebih bekas Docker bersama -sama pada sistem Linux melalui arahan baris arahan. Ini akan berfungsi pada sebarang taburan Linux. Lihat arahan langkah demi langkah di bawah untuk mengetahui bagaimana.
Dalam tutorial ini anda akan belajar:
- Cara Rangkaian Docker Containers Bersama
Kategori | Keperluan, konvensyen atau versi perisian yang digunakan |
---|---|
Sistem | Mana -mana distro Linux |
Perisian | Docker |
Yang lain | Akses istimewa ke sistem linux anda sebagai akar atau melalui sudo perintah. |
Konvensyen | # - Memerlukan arahan Linux yang diberikan untuk dilaksanakan dengan keistimewaan akar sama ada secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah$ - Memerlukan arahan Linux yang diberikan sebagai pengguna yang tidak layak |
Menghubungkan bekas Docker melalui rangkaian
- Dalam konfigurasi ini, anda akan belajar bagaimana menghubungkan dua atau lebih bekas Docker bersama -sama menggunakan teknik rangkaian Docker yang mudah. Kita boleh mulakan dengan penggunaan bekas Docker pertama kita, yang dinamakan
sanbox1
, yang mana kami akan membuat pautan rangkaian:# Docker Run -It -Nama Sandbox1 -H SANBOX1 Linuxconfig/Sandbox/Bin/Bash
Tidak ada yang baru mengenai perintah di atas kecuali untuk diperhatikan bahawa kami tidak mendedahkan mana -mana port rangkaian walaupun niat kami adalah untuk mengakses perkhidmatan (SSH, sambungan pangkalan data, dll.) melalui nombor port yang berkaitan.
- Perintah Linux berikut akan menggunakan kedua dan kali ini bekas Docker ibu bapa bernama
Sandbox2
. Kami juga akan menggunakan a--pautan
Bendera yang akan mewujudkan hubungan ibu bapa dan kanak-kanak yang dipanggil dengan bekas yang digunakan sebelumnyaSandbox1
. Tambahan pula,--pautan
Bendera akan membolehkan bekas induk mengakses sebarang perkhidmatan yang dijalankanSandbox1
bekas melalui nombor port yang sepadan tanpa keperluan bekas kanak -kanak untuk mendedahkan mana -mana pelabuhan ke dunia luar.# Docker Run -It -Name Sandbox2 -H Sandbox2 -Link Sandbox1: Sandbox1 Linuxconfig/Sandbox/Bin/Bash
Perintah Docker di atas menggunakan
--pautan
Bendera yang mengharapkan dua argumen dipisahkan oleh kolon. Hujah pertama dijangka menjadi ID kontena atau seperti dalam kes kami yang dibekalkanSandbox1
Nama kontena yang ingin kami simpan. Hujah kedua, jugaSandbox1
, adalah alias dalaman yang digunakan olehSandbox2
untuk menyelesaikanSandbox1
Konfigurasi rangkaian menggunakan/etc/hos
Fail Konfigurasi:
# grep sandbox1 /etc /host 172.17.0.41 Sandbox1
- Bergantung pada konfigurasi pelabuhan bekas anak anda yang digunakan, anda juga boleh mengekstrak
Sandbox1
Konfigurasi dari pembolehubah persekitaran sistem. Sebagai contoh:# env hostname = sandbox2 term = xterm sandbox1_port = tcp: // 172.17.0.37: 7555 Sandbox1_Port_7555_tcp = tcp: // 172.17.0.37: 7555 path =/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin pwd =/sandbox1_port_7555_tcp_addr = 172.17.0.37 SANDBOX1_PORT_7555_TCP_PROTO = TCP SHLVL = 1 HOME =/ROOT SANDBOX1_NAME =/SANDBOX2/SANDBOX1 SANDBOX1_PORT_7555_TCP_PORT = 7555 _ =/usr/bin/enN
- Dengan cara ini kita hanya boleh menggunakan alias bekas anak kita untuk menyambungnya dari bekas induk
Sandbox2
Tanpa keperluan untuk mengodkan alamat IPnya:# ping -c 1 sandbox1 ping sandbox1 (172.17.0.41): 56 bait data 64 bait dari 172.17.0.41: icmp_seq = 0 ttl = 64 time = 0.071 MS --- Sandbox1 Ping Statistik --- 1 paket dihantar, 1 paket diterima, 0% kehilangan paket bulat min/avg/max/stddev = 0.071/0.071/0.071/0.000 ms
Dan juga mengakses mana -mana pelabuhan dan perkhidmatan pelabuhan:
# nmap -p 22 sandbox1 bermula nmap 6.47 (http: // nmap.org) pada 2015-05-18 08:58 UTC NMAP Scan Report untuk Sandbox1 (172.17.0.41) Hos naik (0.Latensi 000090s). Perkhidmatan Negeri Port 22/TCP Terbuka SSH MAC Alamat: 02: 42: AC: 11: 00: 29 (tidak diketahui) NMAP DONE: 1 IP Alamat (1 Host UP) diimbas dalam 0.50 saat
Itu sahaja yang ada padanya. Dua bekas kami kini boleh berkomunikasi antara satu sama lain dan perkhidmatan seperti kerja SSH di antara mereka. Anda boleh menggunakan konfigurasi yang sama ke mana -mana dua atau lebih bekas Docker yang anda perlukan untuk rangkaian bersama.
Pemikiran penutupan
Dalam panduan ini, kita melihat cara menghubungkan bekas Docker bersama -sama pada sistem Linux. Ini adalah tugas yang agak asas yang difasilitasi melalui Docker --pautan
pilihan. Mempunyai keupayaan untuk rangkaian dua atau lebih bekas Docker bersama -sama meningkatkan kuasa dan kegunaan docker dengan ketara.
Tutorial Linux Berkaitan:
- Perkara yang hendak dipasang di Ubuntu 20.04
- Cara membuat, mengurus, dan mendedahkan perkhidmatan di Kubernetes
- Perkara yang perlu dilakukan setelah memasang ubuntu 20.04 Focal Fossa Linux
- Cara menyambung ke bekas docker melalui ssh
- Cara membuat timbunan lampu berasaskan Docker menggunakan Docker pada ..
- Perkara yang perlu dilakukan setelah memasang Ubuntu 22.04 Jur -ubur Jammy ..
- Cara menetapkan atau menukar bendera partition boot di linux
- Cara Menunjukkan/Periksa Pelabuhan Terbuka di Ubuntu Linux
- Cara menggunakan fail sebagai kunci peranti luks
- Pasang Arch Linux di Workstation VMware
- « Cara Menghapus Semua Bekas Docker Menggunakan Satu Perintah
- Mengeluarkan baris pendua dari fail teks menggunakan baris arahan Linux »