docker 安装mongodb

168 阅读1分钟

1. docker安装

自动安装
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

镜像加速
 vim  /etc/docker/daemon.json

文件不存在则创建,配置如下
{"registry-mirrors":["https://reg-mirror.qiniu.com/"]}

重启服务
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

2. docker-compose安装

安装
sudo curl -L "https://github.com/docker/compose/releases/download/v2.23.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
修改权限
sudo chmod +x /usr/local/bin/docker-compose
设置软链
 sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

3. mongodb

通过docker-compose yaml配置安装

# mongo_docker.yaml 
version: '3.0'
services:
  mongodb:
    image: mongo
    restart: always
    container_name: xxx
    command: [--auth]
    ports:
      - 27017:27017
    volumes:
      - /var/mongodb/data:/data/db
    environment:
    - MONGO_INITDB_ROOT_USERNAME=root
    - MONGO_INITDB_ROOT_PASSWORD=root
  mongo-express:
    image: mongo-express
    container_name: uj-mongo-express
    restart: always
    ports:
      - 8081:8081
    environment:
      - ME_CONFIG_MONGODB_ADMINUSERNAME=root
      - ME_CONFIG_MONGODB_ADMINPASSWORD=root
      - ME_CONFIG_MONGODB_SERVER=mongodb
networks:
  default:
    name: mongodb_network
docker-compose -f mongo_docker.yaml  up -d

-f 指定yaml文件名称

容器启动成功

mongo4.5版本之后逐渐弃用mongo 命令 ,可以通过下载额外的shell链接 MongoDB Shell Download | MongoDB

链接
mongodb://name:password@host

进行用户鉴权,返回1表示鉴权成功
 use admin
db.auth("xxx","xxx")

创建数据库
use testdb
创建数据的一般读写用户
 db.createUser({user:'xx',pwd:'xxx',roles:[{role:'readWrite',db:'testdb'}]})

4. 使用mongo-express

登录 默认用户名:admin,密码:pass mongo-express