连接到桥网络内的redis

时间:2016-01-31 11:25:32

标签: docker

我创建了一个桥接网络名称应用程序并连接到两个容器,如下所示:

[
    {
        "Name": "app",
        "Id": "54fc6dc62ce366d9a019f556a7efd78dfb60676542e6cc4a494678f7faf6a63a",
        "Scope": "local",
        "Driver": "bridge",
        "IPAM": {
            "Driver": "default",
            "Config": [
                {}
            ]
        },
        "Containers": {
            "0280af19da941b4a83101bf9a6d4a51e0a41436374f2e403ac1e1a7169d75b57": {
                "EndpointID": "be4b0587262ea402a8e83c1db6e71fbb7347773dce89869c575d3ace85cdaab5",
                "MacAddress": "02:42:ac:12:00:02",
                "IPv4Address": "172.18.0.2/16",
                "IPv6Address": ""
            },
            "759b09fe9b5d154eb2b0676547e21a576b31c917087a206ed46bea9acced2017": {
                "EndpointID": "78611933ff99b34306944044ed7ec988c16dc05d5b42953547300c7a11cd4b64",
                "MacAddress": "02:42:ac:12:00:03",
                "IPv4Address": "172.18.0.3/16",
                "IPv6Address": ""
            }
        },
        "Options": {}
    }
]

第一个容器是redis db容器,第二个容器是sinatra webapp容器。我像这样运行webapp容器:

sudo docker run -p 4567 \--net=app --name webapp -t -i \-v /home/developer/sinatra/webapp:/opt/webapp kostonstyle/sinatra \/bin/bash

从webapp内部控制台,我可以ping到redis数据库服务器。

root@759b09fe9b5d:/opt/webapp/bin# ping 172.18.0.2
PING 172.18.0.2 (172.18.0.2) 56(84) bytes of data.
64 bytes from 172.18.0.2: icmp_seq=1 ttl=64 time=0.074 ms
64 bytes from 172.18.0.2: icmp_seq=2 ttl=64 time=0.047 ms
64 bytes from 172.18.0.2: icmp_seq=3 ttl=64 time=0.046 ms

如何在控制台中连接redis db?我试过

root@759b09fe9b5d:/opt/webapp/bin# redis-cli -h remote.172.18.0.2

但它告诉我:

Could not connect to Redis at remote.172.18.0.2:6379: Name or service not known

我做错了什么?

1 个答案:

答案 0 :(得分:0)

好像这是一个错字。在没有redis-cli -h 172.18.0.2

的情况下尝试remote.

使用redis-cli --help获取详细信息。