Recently for a project I needed to setup a local mongodb instance using docker (via docker-compose). I set up this simple compose file:

version: "3.1"
services:
  mongo:
    container_name: node-auth-mongo
    image: mongo:4.4.20-rc0-focal
    environment:
      MONGO_INITDB_DATABASE: authdb
      MONGO_INITDB_ROOT_USERNAME: mongo-admin
      MONGO_INITDB_ROOT_PASSWORD: admin-password
    ports:
      - "27017:27017"

Mongo stores the login credentials in a database named admin so we would need to specify that too (as authSource) when connecting to it:

MONGO_URL=mongodb://mongo-admin:admin-password@localhost:27017/authdb?retryWrites=true&w=majority&authSource=admin

Thanks to Hans Kilian over on StockOverflow.