我有一个用Django编写的网络应用程序,在数字海洋液滴中使用mongoengine。在开发步骤中,我使用了位于远程环境中的主数据库样本。但现在我想将Django Web应用程序连接到主MongoDB数据库。我怎样才能做到这一点?使用ssh隧道(我已经在两个环境之间使用它)?如果是这样,我该如何进行此类连接?我知道如何用pymongo建立一个ssh隧道:
from sshtunnel import SSHTunnelForwarder
import pymongo
server = SSHTunnelForwarder(
(remote_ip_address, 22),
ssh_private_key="/home/username/.ssh/id_rsa",
ssh_username="username",
remote_bind_address=('127.0.0.1', 27017),
)
server.start()
client = pymongo.MongoClient('127.0.0.1', server.local_bind_port)
但是我如何与Django网络应用程序进行等效连接?目前,我在settings.py
文件中有以下定义。
# MongoDB settings
MONGODB_DATABASES = {'default': {'name':'dbname'} }
DATABASES = {'default': {'ENGINE': 'django.db.backends.dummy'} }