Docker - Setting MongoDB
Assalamualaikum, pengguna masa depan Docker dan MongoDB! Saya begitu gembira untuk menjadi panduan anda dalam perjalanan menarik ini ke dunia kontainerisasi dan basis data. Sebagai seseorang yang telah mengajar sains komputer selama tahun, saya dapat katakan bahwa memahami teknologi ini akan membuka peluang baru bagi anda. Jadi, mari kita mulai!
Memahami Asas
Apa Itu Docker?
Imajinalkan anda pindah ke rumah baru. Daripada membungkus segala-galanya secara berasingan, apa bila anda hanya boleh mengambil seluruh bilik dan meletakkannya di tempat baru? Itu adalah apa yang Docker lakukan kepada aplikasi perisian. Ia memungut segala-galanya yang diperlukan oleh aplikasi untuk berjalan - kod, runtime, alat sistem, pustaka - kedalam kontainer kecil yang rapi.
Apa Itu MongoDB?
Sekarang, bayangkan sebuah lemari fail besar dan fleksibel yang dapat menyimpan pelbagai jenis maklumat dalam bentuk dan saiz yang berbeza. Itu adalah MongoDB dalam bentuk ringkas. Ia adalah basis data yang tidak memaksa data anda ke dalam jadual keras seperti basis data tradisional. Sebaliknya, ia membiarkan data anda bebas, seperti bagaimana anda mungkin menulis catatan di atas kertas.
Menyiapkan Docker
Sebelum kita dapat memulakan pengembaraan MongoDB kita, kita perlu pastikan kapal Docker kita siap untuk berangkat.
Memasang Docker
- Pergi ke laman web rasmi Docker (docker.com).
- Muat turun versi yang sesuai untuk sistem operasi anda.
- Ikuti penyedia pemasangan - ia mudah seperti kue!
Memastikan Pemasangan Docker
Setelah dipasang, mari pastikan segalanya dalam keadaan baik:
docker --version
Jika anda melihat sesuatu seperti Docker version 20.10.14, build a224086
, anda berada di tempat yang betul!
Mengambil Imej MongoDB
Sekarang engine Docker kita menyusur, mari kitaambil imej MongoDB.
docker pull mongo
Perintah ini adalah seperti pergi ke pasar Docker dan memilih MongoDB pra-pakej dari rak. Mudah-mudahan!
Menjalankan MongoDB di Dalam Kontainer
Perintah Run Asas
Waktu untuk memberikan nyawa kepada kontainer MongoDB kita:
docker run --name some-mongo -d mongo
Mari kitaongkoskan ini:
-
docker run
: Ini memberitahu Docker untuk membuat dan menjalankan kontainer baru. -
--name some-mongo
: Kita memberi nama yang ramah kepada kontainer kita. -
-d
: Ini menjalankan kontainer dalam mode terpisah, yang bermaksud ia menjalankan di latar belakang. -
mongo
: Ini adalah imej yang digunakan untuk membuat kontainer kita.
Perintah Run Lanjut
Untuk mereka yang lebih aventos, ini adalah perintah yang lebih keras dengan beberapa topping ekstra:
docker run --name my-mongo -p 27017:27017 -v /path/on/host:/data/db -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=password -d mongo
Wah, itu banyak! Mari kitaongkoskan ini:
-
-p 27017:27017
: Ini memetakan port 27017 kontainer ke port 27017 hos. -
-v /path/on/host:/data/db
: Ini membuat volume, menghubungkan direktori di hos ke direktori data kontainer. -
-e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=password
: Ini menetapkan pembolehubah persekitaran untuk membuat pengguna admin.
Menyambung ke MongoDB
Menggunakan Shell Mongo
Sekarang kontainer MongoDB kita berjalan, mari kita katakan hai:
docker exec -it my-mongo mongo
Perintah ini adalah seperti mengetuk pintu kontainer dan meminta untuk masuk untuk berbicara. Flag -it
menjadikan pengalaman interaktif, seperti jika anda menggunakan MongoDB yang dipasang secara langsung di mesin anda.
Menggunakan Klient MongoDB
Untuk mereka yang lebih suka antara muka grafik (karena mari kita承认, kadang-kadang kita semua perlu butang cantik), anda boleh menggunakan klient MongoDB seperti Robo 3T atau MongoDB Compass. Hanya sambung ke localhost:27017
, dan anda dalam bisnes!
Operasi MongoDB Asas
Sekarang kita disambung, mari kita main-main sedikit.
Membuat Basis Data
use myAwesomeDB
Ini adalah seperti memberitahu MongoDB, "Hei, saya mahu bekerja di dalam lemari fail baru ini yang dipanggil myAwesomeDB."
Memasukkan Data
db.users.insertOne({name: "John Doe", age: 30, email: "[email protected]"})
Bertimbang seperti memasukkan fail baru ke dalam lemari fail. Kita menambah pengguna ke koleksi users
.
Menyaring Data
db.users.find({name: "John Doe"})
Ini adalah seperti meminta MongoDB, "Bolehkah anda mencari semua fail tentang John Doe untuk saya?"
Mengurus Kontainer MongoDB
Menghentikan Kontainer
docker stop my-mongo
Ini adalah seperti memberitahu MongoDB, "Ambil istirahat, kawan. Kita selesai untuk sekarang."
Memulakan Kontainer
docker start my-mongo
Dan ketika anda bersedia untuk kembali bekerja, perintah ini adalah seperti katakan, "Alright, waktu istirahat telah habis. Kita kembali kerja!"
Menghapus Kontainer
docker rm my-mongo
Jika anda memutuskan anda tidak lagi perlu pengaturan MongoDB ini, perintah ini adalah seperti "Terima kasih atas perkhidmatannya, tetapi tijd untuk katakan goodbye."
Jadual Metode MongoDB
Ini adalah jadual praktis bagi beberapa metode MongoDB biasa:
Metode | Keterangan |
---|---|
insertOne() |
Memasukkan satu dokumen ke dalam koleksi |
insertMany() |
Memasukkan beberapa dokumen ke dalam koleksi |
find() |
Menyaring koleksi untuk dokumen |
updateOne() |
Memperbaharui satu dokumen dalam koleksi |
updateMany() |
Memperbaharui beberapa dokumen dalam koleksi |
deleteOne() |
Menghapus satu dokumen dari koleksi |
deleteMany() |
Menghapus beberapa dokumen dari koleksi |
aggregate() |
Melakukan operasi agregasi ke atas koleksi |
Kesimpulan
Dan itu lah, teman-teman! Kita telah menjalani pengembaraan asas untuk menetapkan MongoDB dengan Docker, dari mengambil imej hingga menjalankan operasi asas. Ingat, seperti menjalankan kemahiran baru, pengawalan datang dengan latihan. Jangan takut untuk mencuba, merobohkan hal-hal, dan belajar dari proses itu.
Ketika kita tamatkan, saya teringat tentang seorang pelajar yang pernah katakan kepada saya mereka merasa "hilang di laut" ketika memulakan Docker dan MongoDB. Pada akhir kursus, mereka katakan mereka merasa seperti "kapten kapal mereka sendiri." Saya harap panduan ini membantu anda menggambar sendiri lintasan melalui teknologi ini.
Teruslah berkayak, teruslah belajar, dan terutama, bersenang-senang! Dunia basis data kontainerisasi adalah milik anda. Sekarang pergi dan MongoDB dengan Docker seperti seorang pro!
Credits: Image by storyset