我有一个安装了Redis的Linux服务器,我想通过命令行从我的本地Linux机器连接到它。

是否可以只安装redis-cli(没有redis-server和其他工具)?

如果我只是复制redis-cli文件到我的本地机器并运行它,我有以下错误:

./redis-cli: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found (required by ./redis-cli)

当前回答

在Docker环境下,可以通过以下命令进入Redis CLI:

docker run -it --rm redis:alpine redis-cli -h redis.mycompany.org -p 6379

其中redis是来自docker Hub的redis docker图像, Redis-cli被预安装在映像中,之后的所有参数都是Redis-cli的参数: -h是要连接的主机名, -p显然是要连接的端口。

您还可以使用上面的命令创建一个别名

alias redis-cli='docker run -it --rm --network=host redis:alpine redis-cli'

如果您使用Bash,可以添加到。bashrc

其他回答

你可以从你的redis机器SCP它,如果你有一个,它只是一个二进制。 如果是私有网络,则使用nc复制(此方法不安全):

redisclient: nc -l 8888 > /usr/local/bin/redis-cli
redisserver: cat /usr/local/bin/redis-cli | nc redisclient 8888

而不是redis-cli你可以简单地使用nc!

nc -v --ssl redis.mydomain.com 6380

然后提交命令。

Ubuntu(在14.04测试)有一个名为redis-tools的包,其中包含redis-cli等工具。 要安装它,输入:

sudo apt-get install redis-tools

注意,在Ubuntu 16.04+上,这个命令有点不同:

sudo apt install redis-tools

从http://redis.io/topics/quickstart

wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make redis-cli
sudo cp src/redis-cli /usr/local/bin/

对于Docker,我通常使用https://registry.hub.docker.com/_/redis/。如果我需要将redis-cli添加到图像中,我使用下面的代码片段。

RUN cd /tmp &&\
    curl http://download.redis.io/redis-stable.tar.gz | tar xz &&\
    make -C redis-stable &&\
    cp redis-stable/src/redis-cli /usr/local/bin &&\
    rm -rf /tmp/redis-stable

要扩展@Agis的回答,你也可以通过运行安装Redis命令行

$ git clone -b v2.8.7 git@github.com:antirez/redis.git
$ make -C redis install redis-cli /usr/bin

这将构建Redis CLI并将二进制文件放入/usr/bin。对于任何使用Docker的人,我也为您构建了一个Dockerfile: https://github.com/bacongobbler/dockerfiles/blob/master/redis-cli/Dockerfile