绑定到 Cloud Foundry 后如何访问 MongoDB 值/数据?

2023-12-28

我正在使用 Spring Boot 并使用 mongodb 数据库创建了一个 Web 应用程序。在本地,我使用命令提示符“mongod”和“mongo”,我可以在其中查询在 UI 中输入的数据。

我当前的应用程序使用在本地主机上运行的 MongoDb,默认端口为 27017。我的 Web 应用程序反映存储在数据库中的数据。当我将此应用程序推送到 Cloud Foundry 并绑定 MONGODB 服务时,它使用另一个数据库。我在哪里以及如何查看/访问正在输入的所有数据。在本地计算机上,我可以使用 db.collection.find() 并查询我的所有数据。

Problem

一旦我将应用程序推送到 Cloud Foundry,我本地存储的所有数据都不会与其链接。我能够将值存储到 PCF MongoDB 中。但我不知道如何查看其中的数据。有没有命令或方法可以查看我输入到 PCF MongoDB 的所有数据?

Attempt

查看我的 VCAP_SERVICES,我可以看到我的数据库名称、用户名和密码。但它们看起来像是经过加密的,字母、数字和连字符都混合在一起。下面的示例显示了 VCAP 的样子(副本值,相同格式)

"database": "9faf201a-39b1-4lse-49242f404g11"
"host": "10.100.100.333"
"password": "2jnkj4nk22kk5lk6kj4n4k6nkj6001"
"username": "401849301k-8g3f-5c3j-k28-583920308592f04"

我尝试在 CLI 中使用下面的代码

mongo someurl.mongodomain.com:45475/database_name -u username -p password

因此,对于数据库名称、用户名和密码,我只需复制并粘贴加密的用户名和密码

mongo myurl.com:1337/9faf201a-39b1-4lse-49242f404g11 -u 401849301k-8g3f-5c3j-k28-583920308592f04" -p 2jnkj4nk22kk5lk6kj4n4k6nkj6001

我发现连接失败。也许我必须输入正确的用户名和密码。在哪里可以设置用户名和密码?我正在使用 Spring Boot,它是自动为我处理的。因此,我从未创建过用户名或密码。


这里有五个建议(最后一个感谢 Daniel.Mikusa):

  • 推送 mongodb 的 Web 客户端并将其绑定到您的数据库。似乎有一个 mongo Express 的 cloudfoundry 包装器:https://github.com/komushi/cf-mongo-express https://github.com/komushi/cf-mongo-express .

  • 您可以使用 mongo 客户端程序连接到远程 mongodb,方式与连接到本地 mongodb 类似。您可以在应用程序的环境中找到凭据(用户名、密码、数据库名称):

    cf env <your-app-name>
    

    但是,CloudFoundry 安装之外的计算机可能会阻止对 mongodb 实例的访问。在这种情况下,您可能想尝试下一个选项。

  • 将安装了 mongo 客户端的 docker 容器推送到 cloudfoundry。通过 ssh 进入 docker 容器,并从那里使用 mongo 客户端。并非所有 cloudfoundry 安装都启用将 docker 容器推送到 CF。

  • 最后,您可以通过 REST-Controller 公开您的域对象。可能使用 spring 数据休息:http://projects.spring.io/spring-data-rest/ http://projects.spring.io/spring-data-rest/.

  • Use cf ssh和一个 ssh 隧道。将 mongodb 实例绑定到应用程序,运行cf env获取主机、端口和凭据(或创建服务密钥)。然后运行cf ssh -N -L <localport>:<service-fqdn-or-ip>:<remote-port> app-name(严格来说,您连接到的应用程序并不重要,这只是我们正在通过的应用程序)。现在将客户端连接到localhost:<localport>并使用您从 cf env 获得的凭据。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

绑定到 Cloud Foundry 后如何访问 MongoDB 值/数据? 的相关文章

随机推荐

  • 如何在 Maven 中仅部署 zip 工件

    我使用下面的描述符和 pom 文件在 Maven 中完成了一些 zip 打包 但在 Maven 中 默认情况下它会在目标文件夹中创建 jar 和 zip 现在我只想在使用deploy deploy file插件的地方部署zip内容 但它没有
  • 基于类的视图中的模拟表单不使用 MagicMock

    我一直在努力模拟表单类以在基于类的视图中替换它的实例 但看起来是这样 因为表单位于类属性中 所以会发生这种情况before我用我的模拟替换了表单类 例证 应用程序 views py from app forms import SomeFor
  • AutomaticMigrationsEnabled 是假还是真?

    在EF项目中 是否有设置的最佳实践自动迁移已启用 更多声明 在我们的团队中 修改模型后 我们通常在包管理器控制台中运行 add migration 和 update database 命令 当其他开发人员运行该项目时会出现此错误 无法删除数
  • 如何自定义CK-Editor的工具菜单?

    我想更改 ckeditor 上的工具菜单选项 例如 我删除了其中一些我不需要使用的内容 我怎样才能做到这一点 有一个配置设置允许您设置将显示哪些按钮 您只需创建自己的工具栏布局 我已经包含了默认的完整工具栏代码 您可以删除不想出现的按钮 最
  • 无法使替换参考“永久”

    我必须将两个分支合并到另一个分支中 并且我想捕获 记录这段历史 首先我尝试了章鱼合并 但分支差异太大 Git 拒绝执行合并 需要明确的是 涉及三个分支 而不是两个 作为替代方案 我从每个分支中检查了所需的文件 对每组文件进行三向比较 然后提
  • 如何在 Gnuplot 中用线条绘制不同块的数据?

    我有一个包含 x y 值块的数据文件 每个块包含 16 条带有 x y 对的线 每个块代表不同时间的这些位置 http pastebin com 0teRrfRU http pastebin com 0teRrfRU 我想绘制特定粒子的轨迹
  • 类型“GroupExpandedEventArgs”已包含“P0”Xamarin Android Java Bindings for Thoughtbot ExpandableRecyclerView 的定义

    我正在尝试为此库创建 Xamarin Android 绑定 https github com thoughtbot expandable recycler view https github com thoughtbot expandabl
  • 更改 GitHub 帐户用户名

    我想更改我的 GitHub 帐户的用户名 但我找不到如何操作 这有可能吗 澄清一下 我不是在谈论 git 存储库中的 user name 参数 而是实际 GitHub 帐户的用户名 是的 这是可能的 但首先读到 当我更改用户名时会发生什么
  • 如何在 ember.js 中对视图进行单元测试?

    我们正在学习 Ember js 我们所有的开发都是 TDD 并且希望 Ember js 也不例外 我们拥有构建测试驱动的 Backbone js 应用程序的经验 因此我们熟悉使用 Jasmine 或 Mocha Chai 测试前端代码 在弄
  • python 中的快速 ping 扫描

    因此 我尝试使用 python 获得与使用 bash 脚本类似的结果 bash 脚本的代码 bin bash for ip in seq 1 254 do ping c 1 10 10 10 ip grep bytes from cut d
  • 在 GWT 客户端创建 XML 文档

    我正在尝试在客户端上创建一些 XML 文件 然后将它们发送到服务器 没什么特别的 只是类似
  • 错误 AADSTS50012:客户端是公共的,因此不应显示“client_assertion”

    当尝试使用以下代码从 clientid 和证书生成 AAD 令牌时 我收到此错误 错误 AADSTS50012 客户端是公共的 因此 client assertion 应该 不呈现本机应用程序 Code await context Acqu
  • gtkmm绘制单个像素

    参考上的例子Gtkmms GdkRGB 的文档 http developer gnome org gdk stable gdk GdkRGB html gdk draw rgb image include
  • Curl 导致 SSL:无法获取本地颁发者证书

    在 Mac OS Yosemite 上安装 Homebrew PHP 5 5 后 遵循以下答案steps https stackoverflow com questions 26461966 osx 10 10 curl post to h
  • javascript forEach 在节点列表上

    考虑以下代码 var els document querySelectorAll myClassName Array prototype forEach call els function el console log el id The
  • 为什么 Windows udp 接收套接字的超时总是比 SO_RCVTIMEO 设置的超时长 500 毫秒?

    易于重现 这是我正在做的伪代码 设置 UDP 套接字 将超时设置为一个值 Timeout set 检查我设置的超时 Timeout checked 尝试在该套接字上接收 没有流量时 计时超时需要多长时间 Time until Timeout
  • Autofac 和 Web API 范围

    早些时候我看到了这个 InstancePerApiRequest 现在我只得到这个 InstancePerHttpRequest autofac 是否删除了 API 范围 我有参考 Autofac Integration WebApi 但此
  • 让AVPlayer填满整个屏幕

    我有一个应用程序 我希望在单个视图的背景中播放视频 我所做的是创建一个AVPlayer 将其添加到AVPlayerLayer并将其作为子层添加到我的视图中 然后我设置框架和videoGravity财产 self player AVPlaye
  • MongoDB Scala 驱动程序 - 渲染 BSON 文档

    目前 我们有一种类型安全的查询语言 这种自定义 DSL 使我们能够轻松编写被解释并转换为 Mongo 查询的数据库查询 我们最近从 Casbah 切换到新的 Mongo Scala 驱动程序并重写了我们的解释器 然而 我在处理可选值时遇到了
  • 绑定到 Cloud Foundry 后如何访问 MongoDB 值/数据?

    我正在使用 Spring Boot 并使用 mongodb 数据库创建了一个 Web 应用程序 在本地 我使用命令提示符 mongod 和 mongo 我可以在其中查询在 UI 中输入的数据 我当前的应用程序使用在本地主机上运行的 Mong