Come installare Redis su Ubuntu 16.04?


65

Sto lavorando con Laravel ma ho installato tutto da solo (php, mysql, compositore, nginx) e ora ho bisogno di installare Redis e configurarlo in modo da poterlo utilizzare per il driver della coda in Laravel.

Come installarlo, perché non può essere installato attraverso apt-get install redis

ottengo questo errore:

ubuntu@ubuntu:~$ sudo apt-get install redis
[sudo] password for ubuntu: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package redis

13
sudo apt-get install redis-server
Darren Weber,

E: Unable to locate package redis-server...? Linux ubuntu-xenial 4.4.0-112-generico
citynorman

Stai cercando di installarlo su Windows? Voglio dire che c'è E:nella tua linea?
lewis4u,

Ho dovuto correre sudo apt-get updateper riparareE: Unable to locate package redis-server
citynorman il

Risposte:


114

Penso che sia sempre meglio (e più semplice) installare dai repository principali come prima opzione se non si hanno requisiti speciali.

Il pacchetto che stai cercando è chiamato redis-server. Puoi controllare le informazioni sul pacchetto con apt show redis-server.

Anche yo può verificare tutti i pacchetti che redis con apt search redis, o anche fare qualche semplice filtraggio utilizzando grep, utilizzare apt search redis | grep phpper cercare php-rediso pacchetto correlato (s) per esempio.

Quindi, puoi semplicemente eseguire:

sudo apt install redis-server

sul tuo terminale, per installare un ambiente redis(server) completamente funzionante .

Se hai requisiti speciali, puoi sempre compilare dal sorgente e installare come @George pubblicato sulla sua risposta.

Spero che sia d'aiuto.


ci sono 2 versioni di redis? un redis normale e un redis server o cosa, ora sono un po 'confuso
lewis4u

6
OK, l'ho provato e sono giunto alla conclusione che non ho bisogno di fare nulla, tranne sudo apt-get install redis-serverche non so di cosa si tratta nella risposta sopra ... in qualche modo non è necessario farlo! ?
lewis4u,

5
Penso che sia legato alle preferenze personali, alcune persone preferiscono costruire dalla fonte (e farlo per ogni versione del software) per tenersi aggiornato, ecc. in mente), preferisco i pacchetti del team Ubuntu perché sono abbastanza ben testati su tutti i sistemi Ubuntu (desktop, server, core, cloud) .
dgonzalez,

2
OK ... per le mie esigenze apt-get install redis-server è più che sufficiente
lewis4u

11
Questa dovrebbe essere la risposta accettata
Nam G VU,

54

Per installare redis attenersi alla seguente procedura:

  1. Configurare un utente non root con sudoprivilegi

  2. Installa dipendenze di build e test:

    sudo apt update
    sudo apt full-upgrade
    sudo apt install build-essential tcl
    
  3. Imposta redis:

    1. Scarica l'ultima copia tramite questo link o con questo

      curl -O http://download.redis.io/redis-stable.tar.gz
      
    2. Crea una cartella temporanea per esso in dire la tua /home/username/redis-stabledirectory
    3. Sposta nella cartella creata ed estraila

      tar xzvf redis-stable.tar.gz
      
    4. Passa alla cartella cd redis-stablee creala con

      make
      make test
      sudo make install
      
  4. Configura redis:

    1. Crea directory di configurazione:

      sudo mkdir /etc/redis
      
    2. Sposta il file di configurazione redis di esempio:

      sudo cp /home/george/redis-stable/redis.conf /etc/redis
      
    3. Modifica il file:

      sudo nano /etc/redis/redis.conf # or with any other text editor
      
    4. Apporta due modifiche lì:
      supervised noda supervised systemd
      dira dir /var/lib/redis# per il dump di dati persistente
  5. Imposta il file di unità di systemd:

    sudo nano /etc/systemd/system/redis.service
    

    Aggiungi il testo:

    [Unit]
    Description=Redis In-Memory Data Store
    After=network.target
    
    [Service]
    User=redis
    Group=redis
    ExecStart=/usr/local/bin/redis-server /etc/redis/redis.conf
    ExecStop=/usr/local/bin/redis-cli shutdown
    Restart=always
    
    [Install]
    WantedBy=multi-user.target
    
  6. Imposta utente, gruppi e directory redis:

    crea utente e gruppo redis con lo stesso ID ma nessuna home directory:

    sudo adduser --system --group --no-create-home redis   
    sudo mkdir /var/lib/redis   # create directory
    sudo chown redis:redis /var/lib/redis   # make redis own /var/lib/redis
    sudo chmod 770 /var/lib/redis   # adjust permission
    
  7. Test redis:

    1. Avvia il servizio redis:

      sudo systemctl start redis
      
    2. Controllare lo stato:

      systemctl status redis
      

      Risultato dello stato se avviato correttamente:

      Output
      ● redis.service - Redis Server
       Loaded: loaded (/etc/systemd/system/redis.service; enabled; vendor preset: enabled)
       Active: active (running) since Wed 2016-05-11 14:38:08 EDT; 1min 43s ago
       Process: 3115 ExecStop=/usr/local/bin/redis-cli shutdown (code=exited, status=0/SUCCESS)
       Main PID: 3124 (redis-server)
       Tasks: 3 (limit: 512)
       Memory: 864.0K
       CPU: 179ms
       CGroup: /system.slice/redis.service
                └─3124 /usr/local/bin/redis-server 127.0.0.1:6379
      
    3. Istanza di prova:

      1. Collegare:

        redis-cli
        
      2. Test di connettività al prompt:

        127.0.0.1:6379> ping   # result PONG
        
      3. Verifica la capacità di impostare le chiavi:

        127.0.0.1:6379 set test "It's working!"  # result ok
        
      4. Ottieni la chiave appena impostata:

        127.0.0.1:6379 get test  # result "It's working!"
        
      5. Esci da redis:

        127.0.0.1:6379 exit
        
      6. Riavvia redis e quindi riesegui i passaggi 1, 4 e 5 per riconnetterti con il client e confermare che il valore del test è ancora disponibile, quindi funziona come previsto:

        sudo systemctl restart redis
        
  8. Abilita redis per l'avvio all'avvio:

    sudo systemctl enable redis
    

Fonte:

Digital Ocean - come installare e configurare redis su Ubuntu 16.04

Link per il download diretto


è necessario fare tutto questo come hai scritto? perché ho appena provato a installare Redis su una macchina diversa con sudo apt-get install redis-servere posso eseguire redis-clie impostare variabili e chiamarle senza problemi ... quindi sto chiedendo perché voglio imparare!
lewis4u,

4
Se vuoi installare l'ultima versione, questa è la strada da percorrere, ma se non sei così preoccupato di ottenere l'ultima, allora sudo apt-get install redis-serverè il percorso da rimorchiare. Ancora una volta, questa è un'opportunità per imparare come redisfunziona effettivamente e come è configurato. Personalmente preferisco farlo in questo modo, quindi conosco il sistema in entrata e in uscita e posso modificarlo in base alle mie esigenze e aspettative.
George Udosen,

Sono un tuo fan adesso.
Tiago Bértolo,

1
@TiagoBertolo obrigado!
George Udosen,

1
@PrimeTimeTran Penso che intenda ripetere i passaggi 1, 4 e 5 del passaggio 7: 3, non della procedura generale.
Muru,

25

Come descritto qui . Per prima cosa aggiungi il repository PPA al tuo sistema operativo, quindi aggiorna l'elenco dei repository e installalo.

sudo add-apt-repository ppa:chris-lea/redis-server
sudo apt-get update
sudo apt-get install redis-server

3
usare ppa è molto più conveniente
cwhsu,

4
Questo ha funzionato benissimo per l'aggiornamento sul posto dalla versione 3.0 predefinita disponibile nel repository standard alla versione 4.0 in Ubuntu 16.04. Grazie
jamescampbell il

2
Migliore risposta!!!!
James M,

1
Ancora valido per Ubuntu 18.04; Sono stato in grado di ottenere l'ultima versione di Redis in questo modo, al contrario di una versione molto più vecchia (1 versione principale / 12 mesi indietro).
cdjaco,

4

Seguendo @ risposta di George , dopo aver corso make(fase 3, parte 4), cdin redis-stable/utilsed eseguire ./install_server.sh.

Questo script interattivo ti aiuterà a definire una porta e altri percorsi dei file, dopodiché puoi eseguirlo immediatamente redis-cli.

La stessa directory ha anche uno script utile per l'avvio e l'arresto del server.


Job for redis-server.service failed because the control process exited with error code. See "systemctl status redis-server.service" and "journalctl -xe" for details. invoke-rc.d: initscript redis-server, action "start" failed. ● redis-server.service - Advanced key-value store Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; vendor preset: enabled) Active: activating (auto-restart) (Result: exit-code) since Wed 2017-03-29 19:19:59 UTC; 37ms ago Docs: http://redis.io/documentation, man:redis-server(1)
Stevie G

0

1) Prima di tutto vai al sito redis.io

2) e vedi lì controlla la pagina di download

3) Aprire il terminale

4) politica redis-server della politica apt-cache

è possibile visualizzare la tabella delle versioni per la visualizzazione della versione del proprio sistema operativo

5) sudo apt-get installa redis-server

Don't getting this way install. Because redis server installing, but redis server install the your Ubuntu operating system version.

6) Modo più semplice Vai al sito redis.io e fai clic sul link per il download. Inoltre, scorri più in basso vedrai l'installazione

almost same way mac

7) Innanzitutto devi inserire il comando di aggiornamento. Tutto il repository è stato aggiornato.

 sudo apt-get update

8) sudo apt-get install build-essential tcl

9) mkdir redis

10) wget http://download.redis.io/releases/redis-4.0.0.tar.gz

11) Ora dai il comando tar

   unzip tar file.
   tar xzf redis-4.0.0.tar.gz

12) cd redis-4.0.0

13) make- facendo su redis binario

se una volta terminato puoi vedere il comando "make test"

14) src/redis-server- avvia il server redis

15) src/redis-cli- avvia il client redis

set name vadivel
    Ok
    get name
    "vadivel"

16) sudo make install- ogni volta che si dà il comando redis su inserire la directory qualsiasi

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.