Бэкэнд моего узла подключается к Cosmos Db с помощью Mongo API.Подключение через mongoose с помощью следующих шагов приводит к ошибке
MongoError: имя базы данных должно быть строкой
при работе в Docker.Он отлично работает при использовании nodemon, то есть вне контейнера Docker.
( < any > Mongoose).Promise = global.Promise;
const options: ConnectionOptions = {useNewUrlParser: true, useFindAndModify: false};
const mongoURI: string = process.env.COSMOS_DB_CONN_STR;
connect(mongoURI, options)
.then(() => console.log(`Mongo DB: connected`))
.catch(err => console.log(`Could not connect. Error: ${err}`));
process.env.COSMOS_DB_CONN_STR имеет формат
mongodb://<USER_NAME>:<KEY>@<DB_INSTANCE_NAME>.documents.azure.com:<PORT>/?ssl=true&replicaSet=globaldb
Есть мысли, почему это происходит?Среда тестирования этого сервиса использует отдельную базу данных космоса, которая прекрасно работает внутри и снаружи докера.