Docker中MongoDB如何使用使用

本篇文章为大家展示了Docker 中MongoDB如何使用使用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

为企业提供成都网站建设、成都做网站、网站优化、营销型网站建设、竞价托管、品牌运营等营销获客服务。成都创新互联拥有网络营销运营团队,以丰富的互联网营销经验助力企业精准获客,真正落地解决中小企业营销获客难题,做到“让获客更简单”。自创立至今,成功用技术实力解决了企业“网站建设、网络品牌塑造、网络营销”三大难题,同时降低了营销成本,提高了有效客户转化率,获得了众多企业客户的高度认可!

1. 搜索镜像

$ docker search mongo
NAME                                DESCRIPTION                                     STARS               OFFICIAL            AUTOMATED
mongo                               MongoDB document databases provide high avai…   6073                [OK]
mongo-express                       Web-based MongoDB admin interface, written w…   493                 [OK]

2. 拉取镜像

MongoDB 提供官方镜像,下载安装镜像方法如下:

$ docker pull mongo

3. 查看镜像

$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
mongo               latest              f7adfc4dbcf5        29 hours ago        413MB

4. 启动镜像

$ docker run \
-p :27017 
-v :/data/db \
-v :/data/configdb \
--configsvr \
-v :/data/backup
--name docker_mongodb \
-d mongo \
-- auth

-p 指定容器的端口映射,mongodb 默认端口为 27017

-v :/data/db 为容器数据的挂载目录,这里是将即本机中的目录挂载到容器中的/data/db中,作为 mongodb 的存储目录

-v :/data/configdb -- configsvr 当我们需要修改配置文件时,我们只需要在宿主机上创建一个mongodb.conf文件,并将该文件所在的文件夹映射到容器的/data/configdb文件夹中,同时,在容器的启动命令中添加--configsvr参数即可。

-v :/data/backup 为容器备份的挂载目录,这里是将即本机中的目录挂载到容器中的/data/backup中,作为 mongodb 的备份目录

--name 为设置该容器的名称

-d 设置容器以守护进程方式运行

--auth 如果加需要验证就加--auth,不需要验证,就去掉。默认mongodb是不使用用户认证

5. 查看进程

$ docker ps -a
CONTAINER ID        IMAGE                    COMMAND                  CREATED             STATUS                      PORTS                                              NAMES
1eafdfe92c89        mongo                    "docker-entrypoint.s…"   5 seconds ago       Up 4 seconds                0.0.0.0:27017->27017/tcp                           docker_mongodb

6. 创建管理员admin 用户和密码

6.1 以admin用户身份进入mongo
--Linux
$ docker exec -it 1eafdfe92c89 mongo admin

---Windows
$ docker exec -it 1eafdfe92c89 mongo amdin
the input device is not a TTY.  If you are using mintty, try prefixing the command with 'winpty'
>>>改为
$ winpty docker exec -it 1eafdfe92c89 mongo amdin
MongoDB shell version v4.0.11
connecting to: mongodb://127.0.0.1:27017/amdin?gssapiServiceName=mongodb
Implicit session: session { "id" : UUID("90590eee-7f0f-4336-844b-0ebcd267902e") }
MongoDB server version: 4.0.11
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
        http://docs.mongodb.org/
Questions? Try the support group
        http://groups.google.com/group/mongodb-user
>
6.2 创建用户
> db.createUser({user:"root",pwd:"root",roles:[{role:'root',db:'admin'}]})
Successfully added user: {
        "user" : "root",
        "roles" : [
                {
                        "role" : "root",
                        "db" : "admin"
                }
        ]
}
> exit
bye

退出mongo

7 数据备份

$ docker exec -it  /bin/bash

$ mongodump -h ip  -d 数据库名 -o  容器存放备份数据的地址

例如: 
root@123456:/# mongodump -h 127.0.0.1 -d lyb -o /var/test/test.bat
2019-07-31T05:15:24.585+0000	writing lyb.ali_access_token_log to 
2019-07-31T05:15:24.585+0000	writing lyb.nls_log to 
2019-07-31T05:15:24.586+0000	done dumping lyb.ali_access_token_log (17 documents)
2019-07-31T05:15:24.586+0000	done dumping lyb.nls_log (1 document)

root@123456:/# cd /var/test/
root@123456:/var/test# ls
test.bat

上述内容就是Docker 中MongoDB如何使用使用,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注创新互联行业资讯频道。


网站栏目:Docker中MongoDB如何使用使用
当前链接:http://pwwzsj.com/article/pghhdc.html