1. 程式人生 > >mongo docker image

mongo docker image

mongo

儲存壓縮映象
docker save -o ~/Desktop/mongo.tar mongo
7za a -mx=9 ~/Desktop/mongo.tar{.7z,}

匯入或拉取映象
docker load -i ~/Desktop/mongo.tar
docker pull mongo

建立容器
docker volume create --name mongo-data
docker run -p 27017:27017 -v mongo-data:/data/db --name mongodb -d mongo
docker run -p 27017:27017 -v mongo-data:/data/db -e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=123456 --name mongodb -d mongo

進入命令列
docker run -it --rm --link mongodb:mongo mongo mongo --host mongo
docker run -it --rm --link mongodb:mongo mongo mongo --host mongo -u root -p 123456 --authenticationDatabase admin admin
或者
docker exec -it mongodb mongo admin
docker exec -it mongodb mongo -u root -p 123456 --authenticationDatabase admin admin
注:每行最後一個admin是庫名稱

常用命令
db         // 顯示資料庫名稱
show dbs   // 顯示全部資料庫
show collections // 查看錶
show roles // 顯示角色
show users // 顯示當前庫的使用者名稱
db.system.users.find()                // 顯示全部使用者
db.system.users.remove({user:"jude"}) // 刪除jude使用者
use admin  // 開啟系統管理資料庫

use demo   // 開啟一個demo資料庫,沒有則自動建立
// 在demo庫建立一個jude使用者
db.createUser({ 
  user: 'jude', 
  pwd: '123456', 
  roles: [ { role: "readWrite", db: "demo" } ] 
  });

db.changeUserPassword("jude","jude123456");    // 改變jude的密碼
db.getUser("jude");            // 檢視使用者
db.dropUser("jude");           // 刪除使用者
db.auth("jude","jude123456");  // 登入


UI管理工具
Robo 3T
https://robomongo.org/download
https://download.robomongo.org/1.2.1/osx/robo3t-1.2.1-darwin-x86_64-3e50a65.dmg
https://download.robomongo.org/1.2.1/windows/robo3t-1.2.1-windows-x86_64-3e50a65.exe
https://download.robomongo.org/1.2.1/windows/robo3t-1.2.1-windows-x86_64-3e50a65.zip
https://download.robomongo.org/1.2.1/linux/robo3t-1.2.1-linux-x86_64-3e50a65.tar.gz

mongo手冊
https://docs.mongodb.com/manual/reference/