docker 安装mongodb
1、docker pull mongo:latest   
2、docker run -p 27017:27017 --name mongodb -d mongo
3、docker exec -it 容器ID /bin/bash
4、 mongosh   进入命令行

增加权限
user admin
db.createRole({role:'sysadmin',roles:[],
    privileges:[
        {resource:{anyResource:true}, actions:['anyAction']}
    ]
});

mongodb地理位置信息实例
db.shop.insert({
      "pos" : [ 103.987278,30.63024],    //经纬度
      "BJ" : 10.0,      //半径
      "name": "华府国际"
     });
db.shop.insert({
      "pos" : [  103.990009,30.640805 ],   //经纬度
      "BJ" : 20.0,   //半径
      "name": "联邦财富中心"
     });
db.shop.insert({
      "pos" : [  104.005388,30.635709 ],    //经纬度
      "BJ" : 30.0,   //半径
      "name": "武侯立交"
     }) ;

1、建立索引
db.shop.createIndex({pos : "2dsphere"})
1、查询距离  距离这个坐标 的距离:104.005101,30.626138  武侯万达刚才

db.shop.aggregate({
    $geoNear:{
        near:[104.005101,30.626138],         
        spherical:true,        
        distanceMultiplier: 6378137,  
        distanceField:"distance"    
        }
    })

2、返回1公里的店铺

//shop是collection的名字,pos是添加了2dsphere的字段,其他固定写法

//查询最远12500米半径,最近200米半径圆形范围内的所有数据

db.shop.find({
     pos:{
     $nearSphere:{
          type: "point",     
          coordinates: [104.005101,30.626138]   
     },
     $maxDistance: 1100,  
     $minDistance:200        
    }
})