Docker mempunyai dua sumbangan teras utama dan kesannya terhadap penyampaian perisian: 2 sumbangan utama: 1 Encapsulation, yang merangkumi persekitaran operasi dan kod ke dalam 2, gudang cermin dalam kotak, edarkan imej dengan cara yang serupa dengan gudang kod
Kesan penghantaran perisian: Sebagai "kontena" dalam industri IT, ia telah mengubah keseluruhan proses dan kaedah penghantaran perisian, sama seperti kontena, ia telah mengubah keseluruhan penghantaran, udara dan darat Kaedah pengangkutan Biarkan produk yang dihasilkan oleh pengeluar benar-benar konsisten dengan pengguna akhir, tidak kira berapa banyak proses yang dilalui dalam proses tersebut. Dengan "bekas" teras ini, seluruh ekosistem berputar di sekelilingnya.
Selain itu, berbanding dengan virtualisasi, virtualisasi ialah virtualisasi perkakasan dan sistem, manakala kontena adalah virtualisasi aplikasi Ia mengubah perjalanan aplikasi maya ini dalam bentuk modul (fungsi) dan melalui pembolehubah persekitaran (parameter fungsi). Pada masa yang sama, perkhidmatan yang sangat besar dan kompleks boleh dipasang dengan bantuan alat orkestrasi.
Pertama sekali, buruh pelabuhan bukan mesin maya! ! tidak! ! tidak! ! Ramai orang mempunyai docker yang penuh dengan mysql apache dan lain-lain! Ini salah! Docker ialah program berbenang tunggal Secara amnya, bekas docker hanya boleh membuka satu aplikasi, jadi sila jangan gunakan docker sebagai mesin maya. Kedua, docker secara teorinya adalah persekitaran kotak pasir terkapsul Semua perubahan dibuat dalam persekitaran dan tidak menjejaskan sistem (sudah tentu anda boleh memasangnya). Ini seperti perisian hijau untuk tingkap, tiada pemasangan diperlukan, hanya muat turun dan gunakan. Anda boleh menganggap docker sebagai pembungkus perisian hijau untuk Linux Selepas imej dibuat, ia boleh dijalankan pada mana-mana mesin dengan docker Ia tidak memerlukan banyak kompilasi. Baiklahヽ( ̄д ̄;)ノJika anda masih tidak faham, saya akan mengaku kalah. . .
Sebagai contoh, jika anda menggunakan Ubuntu dan pelayan menggunakan CentOS, maka jika anda ingin menggunakan projek ke pelayan, ia mungkin mengambil banyak masa untuk mengkonfigurasi persekitaran. Atau sebagai contoh, jika anda menggunakan MySQL, setiap kali anda memasang semula sistem atau menukar persekitaran, anda perlu memasang semula persekitaran anda Lebih banyak perkara yang anda ada, lebih banyak masa yang diperlukan. Dengan Docker, anda hanya memerlukan satu arahan, dan anda boleh menjalankan "persekitaran baharu" pada Ubuntu anda Sudah tentu, persekitaran ini masih berdasarkan persekitaran anda yang sedia ada, iaitu, sebenarnya set sumber yang sama dikongsi, tetapi persekitaran ini sudah mempunyai perkara yang anda perlukan. Jika anda memerlukan MySQL, kemudian pasang imej dengan MySQL dan kemudian mulakan bekas. Jika anda memerlukan Redis, kemudian pasang imej dengan Redis dan kemudian mulakan bekas. Anda perlu..., kemudian..., kemudian.... Sudah tentu, anda juga boleh mengubah suai bekas berdasarkan kerja orang lain, seperti menambah beberapa perisian anda sendiri atau mengubah suai fail konfigurasi, dan kemudian commit menjadikan bekas itu sebagai cermin , anda boleh menggunakan imej ini untuk mencipta N bekas yang serupa pada masa hadapan. Sebagai contoh, jika anda ingin belajar memasang gugusan Redis, maka anda boleh memuat turun imej Redis, kemudian mulakan bekas, tetapkan konfigurasi gugusan, serahkan bekas untuk menjana imej, dan kemudian jalankan 6 berdasarkan imej ini atau lebih banyak bekas dan gugusan disediakan. Dan Docker ia menggunakan sumber yang sangat sedikit.
Ringkasnya, perkara yang boleh dilakukan oleh Docker untuk anda ialah: ia membenarkan bilangan aplikasi yang lebih besar untuk dijalankan pada perkakasan yang sama daripada teknologi lain; ia memudahkan pembangun untuk membina kontena yang sedia untuk dijalankan sangat memudahkan tugas mengurus dan menggunakan aplikasi.
Adakah menyusahkan untuk mengkonfigurasi persekitaran, memasang pelbagai kebergantungan dan kemudian menjalankan kod? Jika ralat berlaku semasa proses pemasangan dan konfigurasi kebergantungan, kod tersebut mungkin tidak dapat dijalankan ialah alat virtualisasi yang boleh membungkus seluruh persekitaran ke dalam imej dan mengedarkannya, hanya tarik ke bawah imej dan jalankannya, sama seperti Muat turun imej mesin maya dan jalankannya secara setempat.
Docker mempunyai dua sumbangan teras utama dan kesannya terhadap penyampaian perisian:
2 sumbangan utama:
1 Encapsulation, yang merangkumi persekitaran operasi dan kod ke dalam
2, gudang cermin dalam kotak, edarkan imej dengan cara yang serupa dengan gudang kod
Kesan penghantaran perisian: Sebagai "kontena" dalam industri IT, ia telah mengubah keseluruhan proses dan kaedah penghantaran perisian, sama seperti kontena, ia telah mengubah keseluruhan penghantaran, udara dan darat Kaedah pengangkutan Biarkan produk yang dihasilkan oleh pengeluar benar-benar konsisten dengan pengguna akhir, tidak kira berapa banyak proses yang dilalui dalam proses tersebut. Dengan "bekas" teras ini, seluruh ekosistem berputar di sekelilingnya.
Selain itu, berbanding dengan virtualisasi, virtualisasi ialah virtualisasi perkakasan dan sistem, manakala kontena adalah virtualisasi aplikasi Ia mengubah perjalanan aplikasi maya ini dalam bentuk modul (fungsi) dan melalui pembolehubah persekitaran (parameter fungsi). Pada masa yang sama, perkhidmatan yang sangat besar dan kompleks boleh dipasang dengan bantuan alat orkestrasi.
Pertama sekali, buruh pelabuhan bukan mesin maya! ! tidak! ! tidak! !
Ramai orang mempunyai docker yang penuh dengan mysql apache dan lain-lain! Ini salah!
Docker ialah program berbenang tunggal Secara amnya, bekas docker hanya boleh membuka satu aplikasi, jadi sila jangan gunakan docker sebagai mesin maya.
Kedua, docker secara teorinya adalah persekitaran kotak pasir terkapsul Semua perubahan dibuat dalam persekitaran dan tidak menjejaskan sistem (sudah tentu anda boleh memasangnya).
Ini seperti perisian hijau untuk tingkap, tiada pemasangan diperlukan, hanya muat turun dan gunakan.
Anda boleh menganggap docker sebagai pembungkus perisian hijau untuk Linux Selepas imej dibuat, ia boleh dijalankan pada mana-mana mesin dengan docker Ia tidak memerlukan banyak kompilasi.
Baiklahヽ( ̄д ̄;)ノJika anda masih tidak faham, saya akan mengaku kalah. . .
Sebagai contoh, jika anda menggunakan
Ubuntu
dan pelayan menggunakanCentOS
, maka jika anda ingin menggunakan projek ke pelayan, ia mungkin mengambil banyak masa untuk mengkonfigurasi persekitaran. Atau sebagai contoh, jika anda menggunakanMySQL
, setiap kali anda memasang semula sistem atau menukar persekitaran, anda perlu memasang semula persekitaran anda Lebih banyak perkara yang anda ada, lebih banyak masa yang diperlukan.Dengan
Docker
, anda hanya memerlukan satu arahan, dan anda boleh menjalankan "persekitaran baharu" padaUbuntu
anda Sudah tentu, persekitaran ini masih berdasarkan persekitaran anda yang sedia ada, iaitu, sebenarnya set sumber yang sama dikongsi, tetapi persekitaran ini sudah mempunyai perkara yang anda perlukan.Jika anda memerlukan
MySQL
, kemudian pasang imej denganMySQL
dan kemudian mulakan bekas.Jika anda memerlukan
Redis
, kemudian pasang imej denganRedis
dan kemudian mulakan bekas.Anda perlu..., kemudian..., kemudian....
Sudah tentu, anda juga boleh mengubah suai bekas berdasarkan kerja orang lain, seperti menambah beberapa perisian anda sendiri atau mengubah suai fail konfigurasi, dan kemudian
commit
menjadikan bekas itu sebagai cermin , anda boleh menggunakan imej ini untuk mencipta N bekas yang serupa pada masa hadapan.Sebagai contoh, jika anda ingin belajar memasang gugusan
Redis
, maka anda boleh memuat turun imejRedis
, kemudian mulakan bekas, tetapkan konfigurasi gugusan, serahkan bekas untuk menjana imej, dan kemudian jalankan 6 berdasarkan imej ini atau lebih banyak bekas dan gugusan disediakan.Dan
Docker
ia menggunakan sumber yang sangat sedikit.Ringkasnya, perkara yang boleh dilakukan oleh Docker untuk anda ialah: ia membenarkan bilangan aplikasi yang lebih besar untuk dijalankan pada perkakasan yang sama daripada teknologi lain; ia memudahkan pembangun untuk membina kontena yang sedia untuk dijalankan sangat memudahkan tugas mengurus dan menggunakan aplikasi.
Adakah menyusahkan untuk mengkonfigurasi persekitaran, memasang pelbagai kebergantungan dan kemudian menjalankan kod? Jika ralat berlaku semasa proses pemasangan dan konfigurasi kebergantungan, kod tersebut mungkin tidak dapat dijalankan ialah alat virtualisasi yang boleh membungkus seluruh persekitaran ke dalam imej dan mengedarkannya, hanya tarik ke bawah imej dan jalankannya, sama seperti Muat turun imej mesin maya dan jalankannya secara setempat.