Jak zainstalować Redis na Ubuntu 16.04?

65

Pracuję z Laravelem, ale zainstalowałem wszystko na własną rękę (php, mysql, kompozytor, nginx), a teraz muszę zainstalować Redis i skonfigurować go, aby móc używać go jako sterownika kolejki w Laravel.

Jak zainstalować, ponieważ nie można go zainstalować apt-get install redis

pojawia się ten błąd:

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
lewis4u
źródło
13
sudo apt-get install redis-server
Darren Weber
E: Unable to locate package redis-server... Linux Ubuntu-xenial 4.4.0-112-generic
citynorman
Czy próbujesz zainstalować to w systemie Windows? Mam na myśli, że jest E:w twojej linii?
lewis4u
Musiałem biec, sudo apt-get updateżeby to naprawićE: Unable to locate package redis-server
citynorman

Odpowiedzi:

114

Myślę, że zawsze lepiej (i prościej) jest zainstalować z głównych repozytoriów jako pierwszą opcję, jeśli nie masz żadnych specjalnych wymagań.

Pakiet, którego szukasz, ma nazwę redis-server. Możesz sprawdzić informacje o pakiecie za pomocą apt show redis-server.

Również yo może wyszukać wszystkie pakiety przywołujące Redis z apt search redis, lub nawet zrobić kilka prostych filtrowanie za pomocą grepużyć apt search redis | grep phpdo wyszukiwania php-redislub pokrewnej pakietu (ów) na przykład.

Możesz więc po prostu uruchomić:

sudo apt install redis-server

na terminalu, aby zainstalować w pełni działające środowisko redis(serwerowe) .

Jeśli masz jakieś specjalne wymagania, zawsze możesz budować ze źródła i instalować jak @George opublikowany w jego odpowiedzi.

Mam nadzieję, że to pomoże.

dgonzalez
źródło
czy są 2 wersje Redis? normalne redis i serwer redis lub co tam, teraz jestem trochę zdezorientowany
lewis4u
6
OK, przetestowałem to i doszedłem do wniosku, że nie muszę nic robić, z wyjątkiem sudo apt-get install redis-servertego, że nie wiem o co chodzi w powyższej odpowiedzi ... jakoś nie trzeba tego wszystkiego robić! ?
lewis4u
5
Myślę, że ma to związek z osobistymi preferencjami, niektórzy wolą budować ze źródła (i robić to dla każdej wersji oprogramowania), aby być bardziej aktualnym itp. Nie zgadzam się z tym, z wyjątkiem bardzo szczególnych przypadków, jak wspomniałem (ze stabilnym systemem pamiętam), wolę pakiety zespołu Ubuntu, ponieważ są one dość dobrze przetestowane na wszystkich systemach Ubuntu (komputer, serwer, rdzeń, chmura) .
dgonzalez
2
OK ... na moje potrzeby apt-get install redis-server jest więcej niż wystarczający
lewis4u
11
To powinna być zaakceptowana odpowiedź
Nam G VU
54

Aby zainstalować redis, wykonaj następujące kroki:

  1. Skonfiguruj użytkownika innego niż root z sudouprawnieniami

  2. Zainstaluj zależności kompilacji i testowania:

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

    1. Pobierz najnowszą kopię za pomocą tego linku lub za pomocą tego

      curl -O http://download.redis.io/redis-stable.tar.gz
      
    2. Utwórz dla niego folder tymczasowy w powiedz swoim /home/username/redis-stablekatalogu
    3. Przenieś do utworzonego folderu i rozpakuj go

      tar xzvf redis-stable.tar.gz
      
    4. Przejdź do folderu cd redis-stablei skompiluj go

      make
      make test
      sudo make install
      
  4. Skonfiguruj redis:

    1. Utwórz katalog konfiguracji:

      sudo mkdir /etc/redis
      
    2. Przenieś przykładowy plik konfiguracyjny redis:

      sudo cp /home/george/redis-stable/redis.conf /etc/redis
      
    3. Edytuj plik:

      sudo nano /etc/redis/redis.conf # or with any other text editor
      
    4. Wprowadź tam dwie zmiany:
      supervised nodo supervised systemd
      dirna dir /var/lib/redis# dla trwałego zrzutu danych
  5. Skonfiguruj plik jednostki systemowej:

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

    Dodaj tekst:

    [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. Skonfiguruj użytkownika redis, grupy i katalogi:

    utwórz użytkownika i grupę redis z tym samym identyfikatorem, ale bez katalogu domowego:

    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. Testuj ponownie:

    1. Uruchom usługę redis:

      sudo systemctl start redis
      
    2. Sprawdź status:

      systemctl status redis
      

      Wynik statusu, jeśli uruchomiono pomyślnie:

      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. Instancja testowa:

      1. Połączyć:

        redis-cli
        
      2. Sprawdź połączenie natychmiast:

        127.0.0.1:6379> ping   # result PONG
        
      3. Sprawdź możliwość ustawienia kluczy:

        127.0.0.1:6379 set test "It's working!"  # result ok
        
      4. Uzyskaj właśnie ustawiony klucz:

        127.0.0.1:6379 get test  # result "It's working!"
        
      5. Wyjdź z redis:

        127.0.0.1:6379 exit
        
      6. Zrestartuj ponownie, a następnie ponownie uruchom kroki 1, 4 i 5, aby ponownie połączyć się z klientem i potwierdzić, że wartość testowa jest nadal dostępna, dlatego działa zgodnie z oczekiwaniami:

        sudo systemctl restart redis
        
  8. Włącz redis, aby rozpocząć przy starcie:

    sudo systemctl enable redis
    

Źródło:

Digital Ocean - jak zainstalować i skonfigurować Redis na Ubuntu 16.04

Bezpośrednie linki pobierania

George Udosen
źródło
czy trzeba to wszystko zrobić tak, jak napisałeś? ponieważ właśnie próbowałem zainstalować redis na innym komputerze sudo apt-get install redis-serveri mogę uruchomić redis-clii ustawić zmienne i wywołać je bez problemu ... więc pytam, ponieważ chcę się uczyć!
lewis4u
4
Jeśli chcesz zainstalować najnowszą wersję, jest to droga, którą należy wybrać, ale jeśli nie martwisz się o najnowszą wersję, sudo apt-get install redis-serverjest to ścieżka do holowania. Ponownie jest to okazja, aby dowiedzieć się, jak redisnaprawdę działa i jak to skonfigurować. Ja osobiście wolę to zrobić w ten sposób, więc wiem i out systemu i może zmieniać go do moich potrzeb i oczekiwań.
George Udosen
Jestem teraz twoim fanem.
Tiago Bértolo,
1
@TiagoBertolo obrigado!
George Udosen,
1
@PrimeTimeTran Myślę, że ma na myśli ponowne uruchomienie kroków 1, 4 i 5 z kroku 7: 3, a nie ogólnej procedury.
muru
25

Jak opisano tutaj . Najpierw dodaj repozytorium PPA do swojego systemu operacyjnego, a następnie zaktualizuj listę repozytoriów i zainstaluj ją.

sudo add-apt-repository ppa:chris-lea/redis-server
sudo apt-get update
sudo apt-get install redis-server
Kibo
źródło
3
używając PPA jest o wiele bardziej wygodne
cwhsu
4
Świetnie się sprawdziło uaktualnienie z domyślnej wersji 3.0 dostępnej w standardowym repozytorium do wersji 4.0 w Ubuntu 16.04. Dzięki
jamescampbell
2
Najlepsza odpowiedź!!!!
James M
1
Nadal obowiązuje dla Ubuntu 18.04; W ten sposób udało mi się uzyskać najnowszą wersję Redis, w przeciwieństwie do znacznie starszej (1 ważna wersja / 12 miesięcy w tyle).
cdjaco
4

Po odpowiedzi @ George'a , po uruchomieniu make(krok 3, część 4) cddo redis-stable/utilsi uruchom ./install_server.sh.

Ten interaktywny skrypt pomoże ci zdefiniować port i inne lokalizacje plików, po czym możesz natychmiast uruchomić redis-cli.

Ten sam katalog ma również przydatny skrypt do uruchamiania i zatrzymywania serwera.

Jaakow
źródło
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) Przede wszystkim przejdź do strony redis.io

2) i zobaczysz tam stronę do pobrania

3) Otwórz terminal

4) serwer redis zasad apt-cache

możesz zobaczyć tabelę wersji dla wyświetlonej wersji systemu operacyjnego

5) sudo apt-get install redis-server

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

6) Najłatwiejszy sposób Przejdź do strony redis.io i kliknij link pobierania Dalej przejdziesz dalej w dół, zobaczysz instalację

almost same way mac

7) Przede wszystkim należy wprowadzić polecenie aktualizacji. Wszystko, co trzeba było do repo, to aktualizacja.

 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) Teraz wydaj polecenie tar

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

12) cd redis-4.0.0

13) make- tworzenie binarnych plików redis

jeśli raz skończysz, zobaczysz polecenie „wykonaj test”

14) src/redis-server- uruchom serwer Redis

15) src/redis-cli- uruchom klienta Redis

set name vadivel
    Ok
    get name
    "vadivel"

16) sudo make install- ilekroć wydaje polecenie redis przy wejściu do dowolnego katalogu

użytkownik868733
źródło