【问题标题】:Openshift - get domain name for MySQL databaseOpenshift - 获取 MySQL 数据库的域名
【发布时间】:2026-01-24 05:50:01
【问题描述】:

在我的环境变量中有 MySQL 数据库的主机。但它是本地网络中的 ip(以 127 开头...)。如何通过 db 的域名将 MySQL 提供给外部世界?

【问题讨论】:

    标签: mysql openshift openshift-cartridge


    【解决方案1】:

    这是不可能的。 Openshift 是一种平台即服务 (PaaS),它以允许通过 API 连接器(例如 PHP 和数据库卡)访问的范式屏蔽实现的内部结构。或者通过 SSH 隧道。它不会将您的 mysql 服务器的 IP 地址作为端口 3306 公开,以便在使用 c#、java、python 等数据库库或 Mysql Workbench 等进行开发时使用。

    事实上,它不是你的mysql服务器,而是共享的。

    基础设施即服务 (IaaS) 平台(例如 AWS EC2)将允许这些本地端口 3306 连接和公开的公共 IP 地址(如果您为它们打开防火墙)。

    使用 Openshift,为了实现与 Mysql Workbench 之类的连接,您需要一个 pki 密钥对和一个 SSH 隧道。例如,用 c# 编写的本机应用程序也是如此,它需要 SSH.NET 之类的东西。这些都是单个开发人员可以承受的所有配置,但一般来说,不适合向您的用户推出。除非你准备好去做那件事。也就是密钥管理。

    这是缺点之一,也是您可以依靠的安全保证之一。你也可以享受它的简单。但它有它的缺点。一旦他们意识到这一点,我已经让一些人远离 Openshift。主要的共享主机也存在同样的限制,其中 SSH 是唯一的进入方式。

    希望我已经回答了你的问题。

    【讨论】: