【发布时间】:2021-06-16 15:09:45
【问题描述】:
我想在 docker 中将网络模式作为 Redis 集群的主机运行。
redis image of docker hub中要执行的命令,写法如下。
docker run --name some-redis -d redis
在执行端口映射后,给 -p 选项如下:
docker run -p 6379:6379 --name some-redis redis
如果连接到redis-cli,则连接良好。
> redis-cli -p 6379
127.0.0.1:6379>
如果用 docker container inspect some-redis 查看网络,默认的网络模式是桥接。
"Networks": {
"bridge": {
"IPAMConfig": null,
"Links": null,
"Aliases": null,
我试图继续与主机。
docker run --net=host -p 6379:6379 --name some-redis redis
WARNING: Published ports are discarded when using host network mode
如果显示诸如,之类的短语,则不会公开端口。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
6f4edb2c4f8a redis "docker-entrypoint.s…" 5 seconds ago Up 4 seconds some-redis
当然,你连redis-cli都连接不上。
> redis-cli -p 6379
Could not connect to Redis at 127.0.0.1:6379: Connection refused
not connected>
Docker container doesn't expose ports when --net=host is mentioned in the docker run command
看上面的问题,好像端口应该是自动公开的。
如何在 docker redis 的网络模式主机中公开端口?
【问题讨论】:
标签: docker redis redis-cluster docker-network