本文主要是介绍针对初学者快速上手docker,安装并且简单使用mongo例子,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
运行环境
macbook
docker安装
https://www.docker-cn.com
有社区版 有企业版
博主使用的是社区版并且是for mac的,自行选用。
安装完成后,打开docker desktop for Mac,点击preferences,修改镜像地址,参考镜像加速地址:
https://www.docker-cn.com/registry-mirror
在这里我使用了修改如下:
添加镜像地址后,点击 Apply & Restart
按钮,直到 docker engine is running
才能正常使用。
简单使用
docker使用mongoDB的例子
1.拉取镜像
官方指引
https://hub.docker.com/_/mongo
使用docker pull mongo
拉取官方提供的mongo镜像
2.运行容器
docker images
命令可以查看拉取了哪些镜像
docker rmi imgeId
删除镜像
通过下面命令启动容器
docker run --name mongo -p 27017:27017 -v ~/docker-data/mongo/:/data/db -e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=123 -d mongo
-p port1:port2 是将本地端口port1 容器端口 port2做一个映射
-v dir1:dir2 是将本地目录dir1 容器目录 dir2 做一个映射
-e 设置启动变量 用户名 & 密码
-d 镜像名字
–name 运行容器名字
3.查看运行中的容器
docker ps
如果查看非running的容器使用docker ps -a
停止容器
docker stop contain_Id | container_name
如果再次启动容器 docker start contain_id | contain_name
4.容器启动失败
docker ps -a
可以看启动过的所有容器,找到启动失败的容器,然后执行
docker logs container_name
,
下面是我将启动mongo时候的启动变量的名字拼错,容器没有启动起来,然后查看的错误日志的提示,帮助你快速定位问题,解决问题
error: missing 'MONGO_INITDB_ROOT_USERNAME' or 'MONGO_INITDB_ROOT_PASSWORD'both must be specified for a user to be created
如果容器没有起来,我们还用相同名字启动容器,需要将之前的容器先删除,否则会无法启动,错误提示:
docker: Error response from daemon: Conflict. The container name "/mongo" is already in use by container "975828671b0ad0da163a4f25a8e0addd37b1f30822ef1632586a3521d2996eb0". You have to remove (or rename) that container to be able to reuse that name.
docker rm container_id
直接移除即可。
5.使用容器
docker exec -ti container_name bash
可以进入容器,
通过shell命令mongo -u root -p 123
使用mongo
这篇关于针对初学者快速上手docker,安装并且简单使用mongo例子的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!