我有一个安装了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

其他回答

安装最新的稳定版本3.0:

$ git clone http://github.com/antirez/redis.git 
$ cd redis && git checkout 3.0 
$ make redis-cli 

可选地,为了方便,你可以把编译后的可执行文件放在你的加载路径中:

$ ln -s src/redis-cli /usr/local/bin/redis-cli

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

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

然后提交命令。

在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

要扩展@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

从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