У меня есть капля Digital Ocean, в которой запущено приложение NodeJS с Mon go DB v 3.2.21. Я использовал приложение Compass для доступа к БД через туннель S SH, однако оно перестало работать и выдает ошибку при попытке подключения:
connect ECONNREFUSED 127.0.0.1:27017.
Конфигурация компаса использует:
Имя хоста: localhost
Порт: 27017
Аутентификация: Нет
S SH Туннель : Использовать файл идентификации
S SH Имя хоста:
S SH Туннельный порт: 22 * 1017 *
S SH Имя пользователя: root
S SH Идентификационный файл: ID_RSA
Результат netstat -ntlp | grep LISTEN на удаленной машине:
tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 621 / systemd-resol *
tcp 0 0 0.0.0.0:22 0.0.0.0 : * LISTEN 3209 / sshd
tcp 0 0 127.0.0.1:27017 0.0.0.0:* LISTEN 8395 / mongod
tcp6 0 0 ::: 80 ::: * LISTEN 9009 / node /app/app.
tcp6 0 0 ::: 22 ::: * LISTEN 3209 / sshd
tcp6 0 0 ::: 443 ::: * LISTEN 9009 / node / app / приложение.
Некоторые возможные подсказки:
Приложение Compass работает на Ma c, который я только что обновил до 10.15.4 - я не уверен на 100%, что проблема совпала с этим обновлением, но это кажется подозрительным.
Я могу S SH на удаленную машину, используя те же учетные данные через терминал на моей Ma c. Когда IS SH in, я могу нормально запустить оболочку Mon go, прочитайте db, et c.
Мое nodeJS приложение может получить доступ к БД.
Если я остановлю приложение, тоже самое сообщение. Если я остановлю приложение, а также остановлю службу mongod, появится сообщение об ошибке: Ошибка создания S SH Туннель: (S SH) Ошибка открытия канала: соединение отклонено
Так что я думаю, что S SH Туннель работает, но Пн go отказывается от соединения (?)
Любая помощь или указатели будут с благодарностью. Спасибо.