我有一个直接安装在主机上的MariaDB数据库和一个托管phpMyAdmin的Nomad集群。两个主机都在同一个Consul集群中。
我在尝试将phpMyAdmin连接到我的数据库时遇到一些问题。phpMyAdmin返回错误:
如果您有任何问题,真实的与我们联系。阅读问候数据包时出错。PID=26
下面是phpMyAdmin作业的配置文件
job "pma" {
datacenters = ["nomeau"]
region = "OVH"
type = "service"
group "pma"{
count = 1
network {
mode = "bridge"
port "http" {
static = 8083
to = 80
}
}
service {
name = "pma"
port = "http"
connect {
sidecar_task {
config {
#Have to st privileged true to avoid crashes and error
#su: cannot set groups: Operation not permitted at envoy setup
privileged = true
args = [
"-c",
"${NOMAD_SECRETS_DIR}/envoy_bootstrap.json",
"-l",
"debug",
"--concurrency",
"${meta.connect.proxy_concurrency}",
"--disable-hot-restart"
]
}
}
sidecar_service {
proxy {
upstreams {
destination_name = "bdd"
local_bind_port = 3306
}
}
}
}
}
task "phpMyAdmin" {
driver = "docker"
env = {
PMA_HOST = "127.0.0.1"
}
config {
image = "phpmyadmin/phpmyadmin:latest"
ports = ["http"]
privileged = true
}
}
}
}
下面是定义数据库服务的bdd.hcl
service {
name = "bdd"
id = "bdd"
port = 3006
connect {
sidecar_service {}
}
}
为了启动数据库的envoy sidecar,我使用了以下命令consul connect envoy -sidecar-for bdd -- -l debug --log-path logs/envoy.log
您将在gist here上的数据库边车代理中找到envoy日志。
我想我只是缺少一个简单的配置选项,但我不知道是哪一个。
1条答案
按热度按时间jdg4fx2g1#
所以,我解决了这个问题。
这是bdd.hcl中的一个简单类型。我为端口编写了3006而不是3306