Se puede ejecutar MongoDB Community Edition como un contenedor Docker usando la imagen oficial de MongoDB Community. El uso de una imagen de Docker para ejecutar la implementación de MongoDB es útil para:
Configurar una implementación rápidamente.
Ayudar a gestionar los archivos de configuración.
Pruebe diferentes características en múltiples versiones de MongoDB.
Acerca de esta tarea
Esta página describe las instrucciones de instalación de Docker para MongoDB Community Edition.Imagen de Docker de MongoDB Enterprise. Se recomiendan MongoDB Enterprise Kubernetes Operator para implementaciones de producción y deben usarse en conjunto. Para obtener instrucciones empresariales, consulte Instalar MongoDB Enterprise con Docker.
Este procedimiento utiliza la imagen oficial de MongoDB Community, que es mantenida por MongoDB.
Una descripción completa de Docker está fuera del alcance de esta documentación. Esta página asume conocimientos previos de Docker.
MongoDB 5.0+ Las imágenes de Docker requieren soporte de AVX en su sistema. Si su sistema no tiene soporte para AVX, puede usar una imagen de Docker de MongoDB anterior a la versión 5.0.
Advertencia
Las versiones de MongoDB anteriores a la 5.0 están descontinuadas y ya no son compatibles con MongoDB. Estas versiones deben ser utilizadas únicamente con fines de prueba.
MongoDB requiere un sistema de archivos que admita
fsync()En directorios. Es posible que los datos creados por imágenes MongoDB no compatibles en Docker no persistan entre reinicios en Windows y OSX.Para evitar un problema en el sistema de archivos al ejecutar MongoDB en Docker, utiliza la imagen oficial de la comunidad de MongoDB mencionada anteriormente.
Antes de comenzar
Procedimiento
Ejecute la imagen como un contenedor
docker run --name mongodb -p 27017:27017 -d mongodb/mongodb-community-server:latest
El -p 27017:27017 en este comando asigna el puerto del contenedor al puerto del host. Esto le permite conectarse a MongoDB con una cadena de conexión localhost:27017.
Para instalar una versión específica de MongoDB, especifica la versión después de : en el comando Ejecutar de Docker. Docker descarga y ejecuta la versión especificada.
Por ejemplo, para ejecutar MongoDB 5.0:
docker run --name mongodb -p 27017:27017 -d mongodb/mongodb-community-server:5.0-ubuntu2004
Para obtener una lista completa de las versiones disponibles, consulta Etiquetas.
Nota
Añadir opciones de línea de comandos
Puedes usar las opciones de línea de comandos de mongod agregando las opciones de línea de comandos al comando Ejecutar de Docker.
Por ejemplo, considera la opción de línea de comandos de Docker mongod --replSet:
docker run -p 27017:27017 -d mongodb/mongodb-community-server:latest --name mongodb --replSet myReplicaSet
Verifique que el contenedor esté en ejecución
Para comprobar el estado de su contenedor Docker, ejecute el siguiente comando:
docker container ls
El resultado del comando ls enumera los siguientes campos que describen el contenedor en ejecución:
Container IDImageCommandCreatedStatusPortNames
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c29db5687290 mongodb/mongodb-community-server:5.0-ubi8 "docker-entrypoint.s…" 4 seconds ago Up 3 seconds 27017/tcp mongo
Validar la implementación
Para confirmar que su instancia de MongoDB está en funcionamiento, ejecute el comando Hello:
db.runCommand( { hello: 1 } )
El resultado de este comando devuelve un documento que describe la implementación de mongod:
{ isWritablePrimary: true, topologyVersion: { processId: ObjectId("63c00e27195285e827d48908"), counter: Long("0") }, maxBsonObjectSize: 16777216, maxMessageSizeBytes: 48000000, maxWriteBatchSize: 100000, localTime: ISODate("2023-01-12T16:51:10.132Z"), logicalSessionTimeoutMinutes: 30, connectionId: 18, minWireVersion: 0, maxWireVersion: 20, readOnly: false, ok: 1 }
Pasos siguientes (Opcional)
Puedes usar Cosign para verificar la firma de MongoDB en imágenes de contenedor.
Este procedimiento es opcional. No es necesario verificar la firma de MongoDB para ejecutar MongoDB en Docker o en cualquier otra plataforma de contenedores.
Para verificar la firma del contenedor de MongoDB, realice los siguientes pasos:
Descargue e instale Cosign
Para obtener instrucciones de instalación, consulte el repositorio de GitHub de Cosign.