Cara Menginstal MongoDB dengan Docker

Menginstal MongoDB dengan Docker di Linux

Untuk menginstal MongoDB dengan Docker di Linux, ikuti langkah-langkah berikut:

  1. Buka terminal dan masuk sebagai root atau pengguna dengan hak sudo.
  2. Jalankan perintah berikut untuk membuat direktori baru di /data/db yang akan digunakan sebagai volume untuk menyimpan data MongoDB:
sudo mkdir -p /data/db
  1. Jalankan perintah berikut untuk menjalankan kontainer MongoDB dengan nama mongo menggunakan image mongo dari Docker Hub:
sudo docker run --name mongo -v /data/db:/data/db -d mongo

Perintah ini akan melakukan hal-hal yang sama seperti yang dijelaskan di bagian sebelumnya untuk Windows.

  1. Tunggu beberapa saat sampai kontainer selesai dibuat dan dijalankan. Anda dapat memeriksa status kontainer dengan menjalankan perintah berikut:
sudo docker ps

Perintah ini akan menampilkan daftar kontainer yang sedang berjalan di komputer Anda. Anda seharusnya melihat output seperti ini:

CONTAINER ID   IMAGE     COMMAND                  CREATED         STATUS         PORTS       NAMES
5f0b9c8a9f0a   mongo     "docker-entrypoint.s…"   2 minutes ago   Up 2 minutes   27017/tcp   mongo

Output ini menunjukkan bahwa kontainer mongo sedang berjalan dengan image mongo dan port 27017 (port default MongoDB).

  1. Selamat, Anda telah berhasil menginstal MongoDB dengan Docker di Linux! Anda sekarang dapat terhubung ke database MongoDB Anda menggunakan alat yang Anda sukai, seperti MongoDB Shell, MongoDB Compass, atau driver MongoDB untuk bahasa pemrograman favorit Anda.

Tips dan Trik

Berikut adalah beberapa tips dan trik yang dapat membantu Anda mengoptimalkan penggunaan MongoDB dengan Docker:

  • Jika Anda ingin menghentikan kontainer MongoDB, Anda dapat menjalankan perintah berikut:
docker stop mongo
  • Jika Anda ingin menghapus kontainer MongoDB, Anda dapat menjalankan perintah berikut:
docker rm mongo
  • Jika Anda ingin menghapus image MongoDB, Anda dapat menjalankan perintah berikut:
docker rmi mongo
  • Jika Anda ingin menentukan versi spesifik dari MongoDB yang ingin Anda gunakan, Anda dapat menambahkan tag versi setelah nama image. Misalnya, jika Anda ingin menggunakan versi 5.0 dari MongoDB, Anda dapat menjalankan perintah berikut:
docker run --name mongo -v /data/db:/data/db -d mongo:5.0
  • Jika Anda ingin mengekspos port kontainer ke port host yang berbeda, Anda dapat menggunakan opsi -p. Misalnya, jika Anda ingin mengekspos port 27017 dari kontainer ke port 3000 dari host, Anda dapat menjalankan perintah berikut:
docker run --name mongo -v /data/db:/data/db -p 3000:27017 -d mongo
  • Jika Anda ingin menjalankan beberapa instance MongoDB di komputer yang sama, Anda harus memberikan nama yang berbeda untuk setiap kontainer dan mengekspos port yang berbeda untuk setiap kontainer. Misalnya, jika Anda ingin menjalankan dua instance MongoDB dengan nama mongo1 dan mongo2, dan mengekspos port 27017 dan 27018 dari host, respectively, Anda dapat menjalankan perintah-perintah berikut:
docker run --name mongo1 -v /data/db1:/data/db -p 27017:27017 -d mongo 
docker run --name mongo2 -v /data/db2:/data/db -p 27018:27017 -d mongo
  • Jika Anda ingin menggunakan Docker Compose untuk mengelola kontainer MongoDB Anda dengan lebih mudah, Anda dapat membuat file docker-compose.yml dengan isi seperti ini:
```
version: "3"
services:
  mongo:
    image: mongo
    volumes:
      - /data/db:/data/db
    ports:
      - 27017:27017
```
  • Jika Anda ingin menghubungkan MongoDB dengan aplikasi lain yang berjalan di kontainer Docker, Anda dapat menggunakan jaringan internal Docker untuk memungkinkan komunikasi antara kontainer. Misalnya, jika Anda ingin menghubungkan MongoDB dengan aplikasi Node.js yang berjalan di kontainer app, Anda dapat membuat file docker-compose.yml dengan isi seperti ini:
version: "3"
services:
  mongo:
    image: mongo
    volumes:
      - /data/db:/data/db
    networks:
      - app-network
  app:
    image: node
    volumes:
      - /app:/app
    ports:
      - 3000:3000
    networks:
      - app-network
networks:
  app-network:
  • Jika Anda ingin mengonfigurasi MongoDB dengan lebih detail, Anda dapat menggunakan file konfigurasi khusus yang berisi opsi yang Anda inginkan. Misalnya, jika Anda ingin mengaktifkan autentikasi dan enkripsi untuk MongoDB, Anda dapat membuat file mongod.conf dengan isi seperti ini:
systemLog:
  destination: file
  path: "/var/log/mongodb/mongod.log"
  logAppend: true
storage:
  dbPath: "/data/db"
  journal:
    enabled: true
net:
  port: 27017
  bindIp: 0.0.0.0
  tls:
    mode: requireTLS
    certificateKeyFile: "/etc/ssl/mongodb.pem"
security:
  authorization: enabled
  • Jika Anda ingin menggunakan file konfigurasi tersebut, Anda harus menyalinnya ke direktori yang dapat diakses oleh kontainer MongoDB, dan memberikan jalur file tersebut sebagai argumen saat menjalankan kontainer. Misalnya, jika Anda menyalin file mongod.conf ke direktori /etc/mongo di host, Anda dapat menjalankan perintah berikut:
docker run --name mongo -v /etc/mongo:/etc/mongo -v /data/db:/data/db -d mongo --config /etc/mongo/mongod.conf

Artikel Terbaru