Linux - Встановіть лише redis-cli


182

У мене встановлений сервер 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)

2
Ну, 1. не дивно, що просто скопіювати виконуваний файл не працює: швидше за все, у вас різні архітектурні та бібліотечні версії, які не можуть працювати. 2. Вам слід проконсультуватися із системою управління програмним забезпеченням, яку постачає ваш дистрибутив, і подивитися, які reditпакунки він надає. Тоді для встановлення одного з цих потрібно лише один клік. Ніколи не слід робити дику установку речей у систему Linux, якщо ви можете замість цього використовувати програмне управління.
аркаща

@arkascha Дякую за пораду. Я зовсім новачок у Linux, тому ця інформація дуже корисна для мене
Олег

Ви маєте на увазі, що ви розробник, який працює в середовищі Linux, але ви ніколи не використовували вашу систему управління програмним забезпеченням системи? Який розподіл ви використовуєте?
аркаща

Вам також може бути цікавий пакет під назвою "hiredis", який пропонує мінімалістичний клієнт c для redis. Немає жодного готового до використання клієнта cli.
аркаща

1
А як git clone git@github.com:antirez/redis.gitтоді cd src && make redis-cli?
deltheil

Відповіді:


350

Ubuntu (тестований 14.04) має пакет, redis-toolsякий називається redis-cliсеред інших інструментів. Щоб встановити його, введіть:

sudo apt-get install redis-tools

17
щось подібне для центів?
Аріель Аллон


@AlinPurcaru docker run --rm --network = хост redis redis-cli info
yihuang

тепер не працює http://security.ubuntu.com/ubuntu bionic-updates/universe amd64 redis-tools amd64 5:4.0.9-1ubuntu0.1404 Не знайдено
Ендрю Снек

92

Замість redis-cliвас можна просто використовувати nc!

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

Потім подайте команди.


11
Спробуйте nc -v redis.mydomain.com 6379(або власний порт)
James111

4
Це найкраща відповідь, оскільки вона не потребує абсолютно ніяких залежностей та зовнішніх інструментів.
піроспада

1
чи можна використовувати це за допомогою пароля redis?
Метт Баччі

2
Ви також можете використовувати, rlwrap nc -v redis.mydomain.com 6379якщо у вас є rlwrapможливість використовувати комбінації клавіш так само, як у оболонці (наприклад, цикл / пошук попередньої команди, наступне слово)
Prashanth Chandra,

1
Я не можу знайти --sslваріант для nc. Ви мали на увазі ncat?
хешлаш

37

З 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

30

Щоб встановити 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

4
git clone http://github.com/antirez/redis.git && cd redis && git checkout 2.8.6 && make redis-cli && cp src/redis-cli /usr/local/bin- це працює для мене.
дхаму

спробував це відредагувати. але ось суть, як це зробити зараз ... gist.github.com/Artistan/d9288f8e12c4027096e66bd331d4e4fd
Artistan

15

Для 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

6
Потенційно дурний коментар, але не забудьте встановити gcc sudo yum install gccперед запуском make!
Брайан Кот-Чанг

Працює і на Linux.
Барат

15

У моєму випадку мені доведеться виконати ще кілька кроків, щоб створити його на 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/

7

Щоб розширити відповідь на @ 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. Для всіх, хто використовує Docker , я також створив Dockerfile, який робить це для вас: https://github.com/bacongobbler/dockerfiles/blob/master/redis-cli/Dockerfile


Спасибі за вашу відповідь. Я спробую, як тільки зможу
Олег

Для мене цю команду склав цілий Редіс, а не лишеredis-cli
Олег

5

Використовуючи Docker , ви можете запустити цю команду, щоб отримати Redis CLI:

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

де redisце redisдокер зображення з Докер Hub,
redis-cliє попередньо встановленої на цьому зображенні, і все після цього є параметрами для redis-cli:
-hце ім'я хоста для підключення, по-
-pвидимому , порт для підключення.


5

Ви також можете використовувати telnet замість цього

telnet redis-host 6379

А потім видайте команду, наприклад для моніторингу

monitor

0

Ви можете скопіювати його з вашої машини Redis, якщо у вас є її, її єдиний двійковий файл. Або скопіюйте з nc, якщо приватна мережа (цей спосіб небезпечний):

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

0

Я зробив просте чисте рішення, яке зараз знаходиться в стадії розробки.

redis-cli: https://github.com/holys/redis-cli

Будуйте один раз і бігайте скрізь. Повністю портативний.

Будь ласка, спробуйте.


0

Існує багато способів встановлення radis-cli. Він поставляється з redis-toolsі redis-server. Встановлення будь-якого з них також буде встановлено redis-cli. Але це також встановить інші інструменти. Так як ви redis-serverдесь встановились і зацікавлені лише встановити redis-cli. Щоб встановити інсталяцію лише redis-cliбез інших зайвих інструментів, виконайте команду нижче

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

1
Отримавши цю помилку в команді copy, будь-яка ідея, як її виправити cp src / redis-cli / usr / local / bin / cp: не може
стати
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.