Docker 如何在minicube中将数据库连接到后端?
我想启动一个带有数据库和java后端的minikube集群 我有一个持久卷和mariadb数据库的服务,其中包含以下持久卷、claim和delpoymentDocker 如何在minicube中将数据库连接到后端?,docker,kubernetes,minikube,Docker,Kubernetes,Minikube,我想启动一个带有数据库和java后端的minikube集群 我有一个持久卷和mariadb数据库的服务,其中包含以下持久卷、claim和delpoyment 以及部署和服务的java后端 此外,我的java后端使用dropwizard,我在config.yml logging: level: INFO loggers: DropwizardBackend.org: DEBUG dataBase: driverClass: org.mariadb.jdbc.Driv
config.yml
logging:
level: INFO
loggers:
DropwizardBackend.org: DEBUG
dataBase:
driverClass: org.mariadb.jdbc.Driver
user: <userName>
password: <password>
url: jdbc:mariadb://<database address>:<port>/<database Name>
日志记录:
级别:信息
伐木工人:
DropwizardBackend.org:调试
数据库:
driverClass:org.mariadb.jdbc.Driver
用户:
密码:
url:jdbc:mariadb://:/
因为我的java后端需要连接到数据库才能运行,所以我收到一条错误消息,因为找不到指定的数据库。我想知道数据库的地址是什么?我是否必须像java部署的外部IP那样指定它?如果只有后端能够访问数据库,我会多么喜欢。从您的yaml看来,您已经将mariaDB服务命名为“maria”,因此它的dns名称应该是
maria
(如果您在同一名称空间中)或maria.
(从所有其他名称空间中)或者maria..svc.cluster.local
作为FQDN。从您的yaml看来,您已经将mariaDB服务命名为“maria”,因此它的dns名称应该是maria
(如果您在同一命名空间中)或maria.
(来自所有其他命名空间)或者maria..svc.cluster.local
作为FQDN。您需要指向数据库的服务的DNS名称。Kubernetes文档中有很多可以借鉴的YAML示例。如果我理解正确,Kubernetes wordpress部署使用环境变量连接到数据库name:wordpress\u DB\u HOST\n value:wordpress mysql
如何指向我数据库的DNSwordpress mysql
是一个DNS名称(FQDN应该是wordpress mysql.default.svc.cluster.local
),它与该教程第一部分中的服务名称匹配。您需要指向数据库的服务的DNS名称。Kubernetes文档中有很多可以借鉴的YAML示例。如果我理解正确,Kubernetes wordpress部署使用环境变量连接到数据库name:wordpress\u DB\u HOST\n value:wordpress mysql
如何指向我数据库的DNSwordpress mysql
是一个DNS名称(FQDN应该是wordpress mysql.default.svc.cluster.local
),它与该教程第一部分中的服务名称相匹配。将maria
作为数据库地址写入dropwizardconfig.yml
是否简单?我对这个容器编排非常陌生,所以我不敢相信它会这么简单。是的,它应该这么简单。它将dns名称“maria”解析为该服务持有的虚拟ip。如果您将exec
放入java容器并运行dig maria
亲爱的Andreas,您就可以尝试一下了!感谢您花时间查看我的.yml
文件,将maria
作为数据库地址写入dropwizardconfig.yml
这样简单吗?我对这个容器编排非常陌生,所以我不敢相信它会这么简单。是的,它应该这么简单。它将dns名称“maria”解析为该服务持有的虚拟ip。如果您将exec
放入java容器并运行dig maria
亲爱的Andreas,您就可以尝试一下了!感谢您抽出时间查看我的.yml
文件