Linux-установить только redis-cli
у меня есть сервер Linux с установленным Redis, и я хочу подключиться к нему через командную строку с моей локальной машины 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)
11 ответов
Ubuntu (протестирован на 14.04) имеет пакет под названием redis-tools
, которая содержит redis-cli
среди других инструментов.
Для установки типа:
sudo apt-get install redis-tools
вместо redis-cli
вы можете просто использовать nc
!
nc -v --ssl redis.mydomain.com 6380
затем отправьте команды.
установить 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
от http://redis.io/topics/quickstart
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make
sudo cp src/redis-cli /usr/local/bin/
с Докером я обычно использую 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
для centOS, возможно, можно попробовать следующие шаги
cd /tmp
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
make
cp src/redis-cli /usr/local/bin/
chmod 755 /usr/local/bin/redis-cli
чтобы развернуть ответ @Agis, вы также можете установить Redis CLI, запустив
$ git clone -b v2.8.7 git@github.com:antirez/redis.git
$ make -C redis install redis-cli /usr/bin
это создаст CLI Redis и бросит двоичный файл в /usr/bin. Всем, кто использует настройки, Я также построил Dockerfile, который делает это для вас:https://github.com/bacongobbler/dockerfiles/blob/master/redis-cli/Dockerfile
в моем случае мне нужно выполнить еще несколько шагов, чтобы построить его на RedHat или в CentOS.
# get system libraries
sudo yum install -y gcc wget
# get stable version and untar it
wget http://download.redis.io/redis-stable.tar.gz
tar xvzf redis-stable.tar.gz
cd redis-stable
# build dependencies too!
cd deps
make hiredis jemalloc linenoise lua geohash-int
cd ..
# compile it
make
# make it globally accesible
sudo cp src/redis-cli /usr/bin/
используя настройки, вы можете запустить эту команду, чтобы получить Redis CLI:
docker run -it redis redis-cli -h redis.mycompany.org -p 6379
здесь redis
это redis
изображение docker из Docker Hub,redis-cli
предварительно установлен в этом образе, и все после этого являются параметрами redis-cli
:-h
имя хоста для подключения,-p
видимо, порт для подключения.
вы можете scp его с вашей машины redis, если у вас есть один, его только один двоичный файл. Или скопируйте с nc, если частная сеть (этот метод небезопасен):
redisclient: nc -l 8888 > /usr/local/bin/redis-cli
redisserver: cat /usr/local/bin/redis-cli | nc redisclient 8888
Я сделал простое решение pure-go, которое находится в стадии разработки.
redis-cli:https://github.com/holys/redis-cli
построить один раз и запустить везде. Полностью портативный.
пожалуйста, не стесняйтесь попробовать.
вы также можете использовать telnet вместо
telnet redis-host 6379
а затем выполните команду, например, для мониторинга
monitor