当前位置: 首页>>技术教程>>正文


apt – 如何在Ubuntu 16.04上安装Redis?

, ,

问题描述

我正在使用Laravel,但我已经全部安装了自己的(php,mysql,composer,nginx),现在我需要安装Redis并对其进行配置,以便可以将其用于Laravel中的队列驱动程序。

如何安装,因为无法通过apt-get install redis安装

我收到此错误:

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

最佳方案

我认为,如果您没有任何特殊要求,从主存储库安装总是更好(更简单)的选择。

您要搜索的包名为redis-server。您可以使用apt show redis-server检查其包装信息。

您也可以使用apt search redis搜索所有提及redis的软件包,甚至可以使用grep进行一些简单过滤,例如,使用apt search redis | grep php搜索php-redis或相关软件包。

So, you can simply run:

sudo apt install redis-server

on your terminal, to install a fully working redis(server) environment.

如果您有任何特殊要求,则始终可以从源代码构建并按照@George在其答案中发布的内容进行安装。

希望能帮助到你。

次佳方案

要安装redis,请执行以下步骤:

  1. 设置具有sudo特权的非root用户

  2. 安装构建和测试依赖项:

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

    1. 通过此link或与此一起下载最新副本

      curl -O http://download.redis.io/redis-stable.tar.gz
      
    2. 在您的/home/username/redis-stable目录中为此创建一个临时文件夹

    3. 移动到创建的文件夹并解压缩

      tar xzvf redis-stable.tar.gz
      
    4. 转到文件夹cd redis-stable并使用

      make
      make test
      sudo make install
      
  4. 配置redis:

    1. 创建配置目录:

      sudo mkdir /etc/redis
      
    2. 移动样本redis配置文件:

      sudo cp /home/george/redis-stable/redis.conf /etc/redis
      
    3. 编辑文件:

      sudo nano /etc/redis/redis.conf # or with any other text editor
      
    4. 在那里进行两个更改:从supervised nosupervised systemddirdir /var/lib/redis#进行持久性数据转储

  5. 设置系统单元文件:

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

    添加文字:

    [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. 设置redis用户,组和目录:

    创建具有相同ID但没有主目录的Redis用户和组:

    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. 测试重做:

    1. 启动redis服务:

      sudo systemctl start redis
      
    2. 检查状态:

      systemctl status redis
      

      成功启动后的状态结果:

      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. 测试实例:

      1. 连接:

        redis-cli
        
      2. 在提示时测试连接性:

        127.0.0.1:6379> ping   # result PONG
        
      3. 检查设置键的能力:

        127.0.0.1:6379 set test "It's working!"  # result ok
        
      4. 获取刚刚设置的密钥:

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

        127.0.0.1:6379 exit
        
      6. 重新启动redis,然后re-run步骤1、4和5再次与客户端连接,并确认您的测试值仍然可用,因此可以正常工作:

        sudo systemctl restart redis
        
  8. 启用redis在启动时启动:

    sudo systemctl enable redis
    

资源:

Digital Ocean – how to install and configure redis on Ubuntu 16.04

Direct download links

第三种方案

here所述。首先将PPA存储库添加到您的操作系统,然后更新并安装存储库列表。

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

第四种方案

@George’s answer之后,运行make(第3步,第4部分),然后将cd转换为redis-stable/utils并运行./install_server.sh

此交互式脚本将帮助您定义端口和其他文件位置,然后您可以立即运行redis-cli

该目录还具有用于启动和停止服务器的便捷脚本。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/8339.html,未经允许,请勿转载。