【问题标题】:Forwarding the port for the redis dashboard in Docker在 Docker 中转发 redis 仪表板的端口
【发布时间】:2021-10-02 23:45:52
【问题描述】:

我正在开发一个新的抓取项目。我已经通过运行这个在 docker 中设置了 redis

docker run -d --rm --name redis -p 6379:6379 redis:alpine

然后我安装了redis客户端,我已经成功让redis运行了。

为了在本地运行爬虫,我需要转发 redis 仪表板的端口。我确实运行了这个命令

redis-cli -h 127.0.0.1 -p 6379 

但我不确定这是否正确。

另外,当我在浏览器中输入 127.0.0.1:6379 时,页面会显示这个

我在网上搜索过,没有得到足够的 windows 平台有用的资源。有谁知道如何解决这个问题?非常感谢您的指导!

【问题讨论】:

  • AFAIK,Redis 不包含 Web 服务器,因此您无法使用浏览器与其交互。你可以运行 Redis Commander 之类的东西来做到这一点。

标签: docker web-scraping redis


【解决方案1】:

当你使用-p 6379:6379时,docker会将redis容器的6379端口绑定到你主机的6379端口上。意味着即使在本地主机之外,您也可以通过端口 6379 连接到这个 redis,例如在网络中...

在这种情况下,命令redis-cli -h 127.0.0.1 -p 6379 是正确的,你也可以使用你的网络ip而不是本地主机ip

如果你不想通过网络连接到这个redis,可以不绑定端口,通过它的ip连接到redis容器,即使用docker run -d --rm --name redis redis:alpine,然后尝试用redis-cli -h CONTAINER_IP -p 6379连接。你可以用docker inspect redis找到容器ip

请注意,浏览器会尝试通过 http 建立连接,并且不会对此类事件做出任何响应

【讨论】:

  • docker inspect IP 地址在大多数情况下都不起作用,我不会查找或使用它。您可以docker run -p 127.0.0.1:6379:6379 使容器只能从本地计算机访问(当localhost 是物理主机系统时)。
猜你喜欢
  • 2015-02-24
  • 1970-01-01
  • 2015-09-22
  • 2021-07-26
  • 2017-01-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多