5.0.24如何用docker进行集群部署

同样的配置文件。如果用centos7直接部署emqx5.0.24,那么可以进行集群部署。
如果用docker部署,那么会找不到节点。

配置文件:
node {
name = “node2@192.168.16.41
cookie = “emqxsecretcookie”
data_dir = “data”
}

log {
file_handlers.default {
level = warning
file = “log/emqx.log”
}
}

cluster {
name = emqxcl

discovery_strategy = manual

discovery_strategy = static
static {
    seeds = ["node2@192.168.16.41", "node1@192.168.16.42"] 
}

}

docker部署日志:
WARNING: Default (insecure) Erlang cookie is in use.
WARNING: Configure node.cookie in /opt/emqx/etc/emqx.conf or override from environment variable EMQX_NODE__COOKIE
WARNING: NOTE: Use the same cookie for all nodes in the cluster.
EMQX_RPC__PORT_DISCOVERY [rpc.port_discovery]: manual
EMQX_LOG__FILE_HANDLERS__DEFAULT__ENABLE [log.file_handlers.default.enable]: false
EMQX_LOG__CONSOLE_HANDLER__ENABLE [log.console_handler.enable]: true
EMQX_NODE__NAME [node.name]: emqx@172.17.0.2
Listener ssl:default on 0.0.0.0:8883 started.
Listener tcp:default on 0.0.0.0:1883 started.
Listener ws:default on 0.0.0.0:8083 started.
Listener wss:default on 0.0.0.0:8084 started.
Listener http:dashboard on :18083 started.
EMQX 5.0.24 is running now!
2023-06-06T06:43:29.868286+00:00 [warning] Ekka(AutoCluster): discovered nodes outside cluster: [‘node2@192.168.16.41’,‘node1@192.168.16.42’]
2023-06-06T06:43:36.067900+00:00 [warning] Ekka(AutoCluster): discovered nodes outside cluster: [‘node2@192.168.16.41’,‘node1@192.168.16.42’]

你的 EMQX 节点和你设置的集群节点不在一个网段上,不可能集群上。

[emqx@172.17.0.2](mailto:emqx@172.17.0.2)
seeds = ["node2@192.168.16.41", "node1@192.168.16.42"]

对的 这个问题我也发现了。我的配置的node.name 和启动后实际的node.name不是同一个值。我配置的是
node {
name = “node2@192.168.16.41”
cookie = “emqxsecretcookie”
data_dir = “data”
}

然后如果是直接使用centos7启动服务 就不会有这个问题

你使用了环境变量 EMQX_NODE__NAME 来设置 node name

EMQX_NODE__NAME [node.name]: emqx@172.17.0.2

这个docker命令没有设置环境变量:
docker run --restart=always --name emqx1 -v /usr/local/emqx/emqx.conf:/opt/emqx/etc/emqx.conf -p 18083:18083 -p 1883:1883 -p 8084:8084 -p 8883:8883 -p 8083:8083 emqx:5.0.24

我也尝试过使用-e 来配置环境变量 但是还是不行。
另外emqx通常是用什么方式来配置集群的呢。