本篇文章为大家展示了Docker 中MongoDB如何使用使用,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。
$ 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]
MongoDB 提供官方镜像,下载安装镜像方法如下:
$ docker pull mongo
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE mongo latest f7adfc4dbcf5 29 hours ago 413MB
$ docker run \ -p <LocalPort>:27017 -v <LocalDirectoryPath>:/data/db \ -v <LocalDirectoryPath>:/data/configdb \ --configsvr \ -v <LocalDirectoryPath>:/data/backup --name docker_mongodb \ -d mongo \ -- auth
-p
指定容器的端口映射,mongodb 默认端口为 27017
-v <LocalDirectoryPath>:/data/db
为容器数据的挂载目录,这里是将<LocalDirectoryPath>
即本机中的目录挂载到容器中的/data/db
中,作为 mongodb
的存储目录
-v <LocalDirectoryPath>:/data/configdb -- configsvr
当我们需要修改配置文件时,我们只需要在宿主机上创建一个mongodb.conf
文件,并将该文件<LocalDirectoryPath>
所在的文件夹映射到容器的/data/configdb
文件夹中,同时,在容器的启动命令中添加--configsvr
参数即可。
-v <LocalDirectoryPath>:/data/backup
为容器备份的挂载目录,这里是将<LocalDirectoryPath>
即本机中的目录挂载到容器中的/data/backup
中,作为 mongodb
的备份目录
--name
为设置该容器的名称
-d
设置容器以守护进程方式运行
--auth
如果加需要验证就加--auth
,不需要验证,就去掉。默认mongodb
是不使用用户认证
$ 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
--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 >
> db.createUser({user:"root",pwd:"root",roles:[{role:'root',db:'admin'}]}) Successfully added user: { "user" : "root", "roles" : [ { "role" : "root", "db" : "admin" } ] }
> exit bye
退出mongo
$ docker exec -it <CONTAINER ID> /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如何使用使用,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。