MongoDB
Marca MongoDB en una app y recibe su propio nombre de base en el MongoDB compartido del servidor. Esto es exactamente lo que obtienes, qué no cubre todavía, y cuándo tiene más sentido una instancia dedicada.
Qué obtienes
- MongoDB 7 (mongo:7), compartido en el servidor: cada app recibe su propio nombre de base (app_<id>) en esa instancia, expuesto como MONGODB_URL y los alias MONGODB_URI, MONGO_URL, MONGOLAB_URI y MONGOHQ_URL que algunos frameworks esperan.
- A diferencia de Postgres y MySQL, el complemento compartido todavía no crea un inicio de sesión separado por app; el aislamiento es por nombre de base y por la red privada del servidor, no por credenciales propias de cada app.
- No forma parte del sistema de respaldo programado, que cubre Postgres, MySQL y ClickHouse. Mover una app a un servidor de base de datos copia sus datos de MongoDB una sola vez, en ese traslado.
- Sin restauración a un punto en el tiempo ni failover automático para el complemento compartido; eso cubre Postgres (restauración a un punto en el tiempo) o Postgres, MySQL y Redis (failover del servidor en espera).
- Las apps que necesitan un verdadero conjunto de réplicas, para change streams, reciben su propio contenedor MongoDB dedicado como parte de una stack en lugar del complemento compartido, porque una sola instancia compartida no puede ofrecer eso.
Cómo agregarlo
- 1
Marca MongoDB al crear la app
En Nueva app, o después desde Editar → Complementos, marca MongoDB y despliega. Railyard inyecta MONGODB_URL (y sus alias) antes de que corra el build.
- 2
O agrégalo desde la CLI
railyard apps create <name> <git-url> --addons mongodb hace lo mismo desde una terminal.
- 3
Conectarte desde fuera de tus apps
Trusted addresses, el proxy TCP para conectarte desde tu propia máquina, hoy cubre Postgres, MySQL, ClickHouse, Redis y RabbitMQ. MongoDB todavía no está en esa lista, así que consúltalo desde otra app en el mismo servidor o red del equipo, o por SSH al servidor mismo.
Un ejemplo de un clic
LibreChat despliega su propio conjunto de réplicas MongoDB de un solo nodo junto a la app, el patrón que usa Railyard cuando una app necesita change streams en vez del complemento compartido. Rocket.Chat hace lo mismo para chat de equipo.
O despliega una instancia independiente despliega una instancia MongoDB independiente con un usuario root y contraseña generados, si eso es todo lo que necesitas.