Установите MongoDB на Docker на Mac

Предварительное условие: докер установлен на Mac
Вставьте описание изображения сюда

1. Вытащить последнее зеркало MongoDB

docker pull mongo:latest

Вставьте описание изображения сюда

2. Посмотрите в зеркало.

docker images

Вставьте описание изображения сюда

3. Запустите контейнер mongo.

docker run -itd --name mongo -p 27017:27017 mongo --auth

Вставьте описание изображения сюда
Подсказка:

  • docker run: создайте новый контейнер и запустите команду
  • -i: запустить контейнер в интерактивном режиме, обычно используется вместе с -t;
  • -t: перераспределить псевдо-входной терминал для контейнера, обычно используется одновременно с -i;
  • -d: запустить контейнер в фоновом режиме и вернуть идентификатор контейнера;
  • --Name = "nginx-lb": укажите имя для контейнера;
  • -p: указать сопоставление портов, формат: хост (хост) порт: порт контейнера
  • --Auth: включить аутентификацию пароля контейнера mongo

mongodb успешно установлен

4. Войдите в контейнер монго.

docker exec -it mongo mongo admin  

Подсказка:

  • docker exec: выполнять команды в работающем контейнере
  • -i: оставить STDIN открытым, даже если он не прикреплен
  • -t: выделить псевдотерминал

5. Создайте учетную запись администратора и пароль.

Учетная запись и пароль здесь установлены на admin.

db.createUser({ user:'admin',pwd:'admin',roles:[ { role:'userAdminAnyDatabase', db: 'admin'}]}); 

Пользователь в mongodb основан на роли идентификации, а роль учетной записи администратора - userAdminAnyDatabase. userAdmin означает идентификацию управления пользователями, AnyDatabase - возможность управлять любой базой данных.

6. Войдите в систему с созданной учетной записью.

db.auth('admin', 'admin')

Вставьте описание изображения сюда
После входа в систему под учетной записью администратора вы можете использовать эту учетную запись для создания других учетных записей администратора базы данных.

use yourdatabase

db.createUser({ user: "youruser", pwd: "yourpassword", roles: [{ role: "dbOwner", db: "yourdatabase" }] })

Встроенные роли роли следующие:

  • Чтение: разрешить пользователям читать указанную базу данных.
  • readWrite: разрешить пользователям читать и записывать указанную базу данных
  • dbAdmin: позволяет пользователям выполнять функции управления в указанной базе данных, такие как создание индекса, удаление, просмотр статистики или доступ к system.profile
  • userAdmin: разрешить пользователям писать в коллекцию system.users, а также создавать, удалять и управлять пользователями в указанной базе данных.
  • clusterAdmin: он доступен только в базе данных администратора, предоставляя пользователям полномочия на управление всеми шардами и функциями, связанными с набором репликации.
  • readAnyDatabase: доступно только в базе данных администратора, что дает пользователям права на чтение для всех баз данных.
  • readWriteAnyDatabase: доступно только в базе данных администратора, предоставляя пользователю права на чтение и запись для всех баз данных.
  • userAdminAnyDatabase: доступно только в базе данных администратора, предоставляя пользователю права userAdmin для всех баз данных
  • dbAdminAnyDatabase: доступно только в базе данных администратора, предоставляет пользователю права dbAdmin для всех баз данных.
  • root: Доступно только в базе данных администратора. Супер аккаунт, супер авторитет

Инструмент управления графическим интерфейсом MongoDB: Robo 3T


https://robomongo.org/download

Резервное копирование и восстановление MongoDB

  • Метод резервного копирования: docker cp mongodump
  • Метод восстановления: docker cp mongorestore

https://www.runoob.com/mongodb/mongodb-mongodump-mongorestore.html

рекомендация

отblog.csdn.net/weixin_40693643/article/details/113428994