The short version: Just use docker. MongoDB authentication documentation is sloppy.
- 1 Summary
- 2 Installing
- 3 Configuring
- 4 Startup Service
- 5 Access Control
- 6 Basic CRUD Operations
- 7 Basic Collections Operations
- 8 Basic Database Operations
- 9 Monitoring
- 10 APIs
- 11 References
- 12 Related Page
- 13 Flags
The brief summary:
- MongoDB provides a nosql unstructured data store for arbitrarily complicated json structures
- Listens on port 27017
- Install from mongodb.org debian repos
- Config handles file paths, logging, security, networking
- Users must be created per-database, or a system-wide admin account added
- Enable user access controls, expose to private management LAN interfaces
MongoDB/Manual Installation - installing MongoDB manually/natively on the OS
To run MongoDB using Docker, I recommend using a docker-pod that has both MongoDB and MongoExpress (web frontend for MongoDB).
- https://git.charlesreid1.com/docker/pod-mongo - docker pod that uses docker containers defined in the repos below to run the docker pod
- https://git.charlesreid1.com/docker/d-mongodb - docker container to run MongoDB
- https://git.charlesreid1.com/docker/d-mongoexpress - docker container to run MongoExpress
MongoDB/Docker - installing/running MongoDB in a docker pod
MongoDB/Configuration - notes on configuring MongoDB
MongoDB documentation on configuration: https://docs.mongodb.com/manual/reference/configuration-options/
MongoDB/Startup - notes on creating a MongoDB startup service
MongoDB offers two access control mechanisms: user authentication, and network access.
First, MongoDB allows you to create an admin user, which can be used to create various user accounts with different permissions levels for different data. This provides a fine-grained access control mechanism around MongoDB.
MongoDB/Users - guide to setting up admin/regular users in MongoDB to control access to data in database
Second, like any network service, MongoDB can bind to a particular network interface, allowing the network firewall to be used to restrict access to MongoDB.
MongoDB/Network Access - guide to setting up the network to access (or not allow access) to MongoDB
Basic CRUD Operations
MongoDB performs CRUD (create, read, update, delete) transactions/operations on the data that it stores.
Basic Collections Operations
Basic operations on collections:
Basic Database Operations
Notes on basic database operations:
MongoDB as a Monitoring Target
MongoDB has several mechanisms for monitoring the state of the database (per second operations, cache sizes, disk and memory usage, etc.)
MongoDB as a Monitoring Data Store
collectd has a Write_MongoDB plugin to allow collectd to write its data to MongoDB.
Python API: Pymongo
Java API: MongoDB/Java
Database design patterns: https://docs.mongodb.com/manual/applications/data-models/
Dashboards and Monitoringtools for creating dashboards and monitoring applications
Flags · Template:DashboardFlag · e