MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Wadah mongo Windows Docker tidak berfungsi dengan pemasangan volume

Untuk menyiasatinya, Anda dapat menggunakan alat seperti rsync untuk memindahkan file db ke direktori yang dipetakan saat Mongo sedang berjalan. Bug yang mendasarinya berkaitan dengan latensi antara volume yang dipetakan Windows dan jalur pengikatan di dalam wadah. Membongkar pekerjaan ke rsync akan memisahkan latensi dari persyaratan runtime Mongo.

Contoh

Buat Dockerfile dasar seperti ini:

FROM mongo:latest

RUN apt-get update && \ 
    apt-get install -y \
        rsync

ADD init.sh /init.sh

Dimana init.sh adalah:

#!/bin/bash

migrate_db() {
  while true
  do
    rsync -avh /data/db/* /data/mapped-db
    sleep 5
  done
}

migrate_db &

#Execute a command
mongod --smallfiles --logpath=/dev/null --verbose &

#Wait
wait $!

Kemudian, saat meluncurkan wadah, mulailah dengan ./init.sh sebagai ENTRYPOINT . Anda .




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. mongodb Java Driver - $group dengan banyak bidang

  2. Mongoose Query Untuk Mengurutkan Dokumen Utama &SubDokumen berdasarkan bidang tertentu

  3. Halaman komentar tersemat di mongodb

  4. Kueri MongoDB Mengembalikan Array Kosong

  5. Kelayakan menjalankan MongoDB di Linode 512 VPS?