专题系列往期文章目录

(一)移动端安卓手机改造成linux服务器&Linux中安装软件踩坑历险记
(二)Debian Linux系统中安装oracle JDK1.8详细过程(arm64/aarch64架构下)
(三)Debian Linux系统中安装mysql5.7+详细过程(arm64/aarch64架构下)


快捷目录

  • 专题系列往期文章目录
  • 前言
  • 一、Redis的安装与相关配置
    • 1.下载安装Redis
    • 2. Redis的相关配置
  • 二、Nginx的安装与相关配置
    • 1. 下载安装nginx
    • 2. nginx的相关配置
  • 总结

前言

在上一篇文章中,主要分享了 改造后的基于arm/aarch64的安卓手机版Linux中 mysql5.7的安装与相关配置等内容。本文就 基于arm/aarch64指令集架构的Linux系统中 Redis与Nginx的安装与相关配置作一介绍,由于在实际项目开发中相较于jdk、mysql等,Redis与Nginx的版本要求不是太苛刻,所以redis与nginx的安装比较简单,网上相关资源也很多本文就不作太深入的研究。(温馨提示: 本篇文章也适合作为“树莓派”等设备中Redis和nginx的安装教程)


一、Redis的安装与相关配置

Redis 是一款优秀的开源高性能键值对的内存数据库(又称key-value数据库),由于数据是存储在内存中,所以读写速度非常快(故又称内存数据库),可以用来做数据库、缓存、消息中间件等诸多场景,是一种NoSQL(not-only sql,非关系型数据库)的数据库。
当然了它如此吃香的背后原因肯定是多方面的比如采用优秀的数据结构、巧用IO多路复用技术等,关于Redis的原理及其底层知识本文不作介绍,感兴趣的可以自行学习补充比如可以参考这篇文章【什么是redis】。本文仅作Linux系统中Redis与Nginx的安装、配置及使用。

1.下载安装Redis

在前面几篇文章中已介绍过,Linux系统中有多种安装软件方式。对于Redis、Nginx可以直接通过系统包管理工具即安装软件命令进行安装,也可自行下载安装包或安装文件然后使用命令安装(此方法安装时必须下载与当前系统的CPU架构如arm64相匹配的软件)等等。本文以包管理工具安装为例,如需要使用其他方式安装,请自行研究。

第一步: 检查/更换下载镜像源
下载软件前请先确保系统已经配置好了镜像源,如果之前已配置过请跳过此步,如需重新配置可以参考下方介绍。
目前速度比较快的国内源有阿里云、华为云、中科大等,具体配置过程请参考 Linux arm64架构修改软件源 。本文使用的是中科大的:

#中科大镜像站deb https://mirrors.ustc.edu.cn/debian/ buster main contrib non-freedeb https://mirrors.ustc.edu.cn/debian/ buster-updates main contrib non-freedeb https://mirrors.ustc.edu.cn/debian/ buster-backports main contrib non-freedeb https://mirrors.ustc.edu.cn/debian-security/ buster/updates main contrib non-freedeb-src https://mirrors.ustc.edu.cn/debian/ buster main contrib non-freedeb-src https://mirrors.ustc.edu.cn/debian/ buster-updates main contrib non-freedeb-src https://mirrors.ustc.edu.cn/debian/ buster-backports main contrib non-freedeb-src https://mirrors.ustc.edu.cn/debian-security/ buster/updates main contrib non-free

第二步: 更新软件源数据库
安装前先更新并升级软件库。
命令:
— root用户: apt update && apt upgrade
— 普通用户:sudo apt update && apt upgrade

root@localhost:/home# root@localhost:/home# pwd/homeroot@localhost:/home# root@localhost:/home# apt update && apt upgrade

第三步: 使用命令安装Redis
树莓派等Debian或Ubuntu类型的Linux使用的是apt或apt-get命令;红帽系列Linux如CentOS对应的是yum命令。
本文使用的linux类型是Debian,命令:

root@localhost:/home# pwd/homeroot@localhost:/home# root@localhost:/home# apt install -y redis-server//如果是非root用户请使用sudo apt install -y redis-serverReading package lists... DoneBuilding dependency tree Reading state information... Done......省略若干行root@localhost:/home# 

第四步: 检查Redis安装是否成功
安装完成后,Redis服务将会自动启动,可以通过以下方式检验Redis服务是否正常运行:
方法一:systemctl status redis-server 命令
方法二:whereis redis-server 命令

root@localhost:/home# root@localhost:/home# systemctl status redis-serverredis-server.service - Advanced key-value storeLoaded: loaded (/usr/lib/systemd/system/redis-server.service, enabled)Active: active (running)root@localhost:/home# root@localhost:/home# whereis redis-serverredis-server: /usr/bin/redis-server /usr/share/man/man1/redis-server.1.gzroot@localhost:/home#

温馨提示:
如果您的服务器上禁用了IPv6,则Redis服务将无法启动。

至此,就成功的完成了Linux中Redis的安装。接下来就需要对安装的redis做一些必要的配置。另外要提到的是:在Linux中如果条件允许就尽量选择安装二进制解压即可用的免安装版。

2. Redis的相关配置

通过上一步,Redis已在Linux服务器上安装并运行,可以开始配置并使用它了。

第一步: 配置Redis允许远程访问
默认情况下,Redis配置为仅在本地主机上侦听。也就是说只能从运行Redis服务的计算机连接到Redis服务器。
如果使用单个服务器设置,并且连接到数据库的客户端也在同一主机上运行,则无需或不应启用远程访问。

要将Redis配置为接受远程连接,需要修改Redis的配置文件。具体操作为:打开配置文件后搜索到bind 127.0.0.1 ::1行,注释掉该行并设置为bind 0.0.0.0 如下:

root@localhost:/home# root@localhost:/home# vim /etc/redis/redis.conf //找到自己的redis安装位置并打开配置文件(普通用户请使用sudo vi /etc/redis/redis.conf)


保存文件并关闭编辑器。

第二步: 重新启动Redis服务以使更改生效

root@localhost:/home# root@localhost:/home# systemctl restart redis-server root@localhost:/home# 

第三步: 验证Redis正在侦听端口上的所有接口6379
重启Redis服务后,使用ss或netstat验证Redis正在侦听端口上的所有接口6379。命令为:
ss -an | grep 6379
or
netstat -lntp|grep 6379

root@localhost:/home# root@localhost:/home# netstat -lntp|grep 6379root@localhost:/home# 

应该看到类似如下的内容:

tcp LISTEN 0 128 0.0.0.0:6379 0.0.0.0:*
tcp LISTEN 0 128 [::]:6379 [::]:

另外
如果系统防火墙开着,就还需要添加防火墙规则,以启用来自远程计算机上TCP端口的流量6379 或 直接关闭防火墙。

比如:假设您正在使用UFW防火墙来管理防火墙iptables(Debian、Ubuntu等常用的防火墙),并且希望允许从192.168.121.0/24子网进行访问,则可以运行以下命令:
sudo ufw allow proto tcp from 192.168.121.0/24 to any port 6379
确保将防火墙配置为仅接受来自受信任IP范围的连接。

完成后,使用该redis-cli实用程序通过从远程计算机ping Redis服务器来测试连接:
redis-cli -h ping
该命令应返回以下响应PONG:
PONG


至此,已成功的完成了Linux中Redis的安装与配置!

二、Nginx的安装与相关配置

Nginx是一款轻量级、高性能的Web服务器、反向代理服务器,由于它的内存占用少,启动速度快且高并发能力强(跟redis一样都采用了IO多路复用技术),所以 在互联网项目中具有广泛应用场景。Nginx 可以用作独立的 Web 服务器,也可以用作 HTTP 和非 HTTP 服务器的反向代理,还可以用来实现负载均衡、资源压缩、防盗链设计等诸多用途,目前使用最多的就是负载均衡,具体原理等知识就不介绍了百度一下有很多,顺便附上一篇参考文章【深入浅出搞懂Nginx】。下面直接进入安装步骤。

1. 下载安装nginx

nginx的安装过程与Redis大致相同。对于Debian Linux而言Nginx 包包含在默认的 Debian Buster 存储库中。安装非常简单,只需以 root 用户或非root用户使用 sudo 权限运行以下命令:sudo apt update && sudo apt install nginx

第一步: 下载安装nginx

root@localhost:/home# root@localhost:/home# apt update && sudo apt install nginxroot@localhost:/home# 

第二步: 检查验证nginx安装情况
安装过程完成后, Nginx 服务将自动启动。可以使用 curl 来验证,如下所示:

root@localhost:/home# root@localhost:/home# curl -I 127.0.0.1root@localhost:/home# 

输出看起来类似于:
HTTP/1.1 200 OK
Server: nginx/1.14.2
Date: Tue, 16 Jul 2019 16:50:46 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Tue, 16 Jul 2019 16:50:26 GMT
Connection: keep-alive
ETag: “5d2e0052-264”
Accept-Ranges: bytes

除此之外也可以使用 systemctl 命令来检查和管理 Nginx 服务,如: systemctl status nginx

第三步: 启动nginx服务,使用浏览器进行访问测试
安装过程完成后, Nginx 服务将自动启动。当然可以使用service命令或者systemctl命令查看和管理nginx服务(如果没有启动的话使用启动命令service nginx start 或者systemctl start nginx;重启nginx用service nginx restart或systemctl restart nginx 或 /usr/sbin/nginx -s reload),如下所示:

root@localhost:/home# root@localhost:/home# service nginx status[ ok ] nginx is running.root@localhost:/home# 或者root@localhost:/home# root@localhost:/home# systemctl status nginxnginx.service - A high performance web server and a reverse proxy serverLoaded: loaded (/usr/lib/systemd/system/nginx.service, enabled)Active: active (running)root@localhost:/home# 

打开浏览器,输入服务器的IP地址访问测试(如果是在服务器的浏览器中测试可以直接输入localhost)。看到下图,说明nginx启动成功

2. nginx的相关配置

通过上一步,我们成功的在Linux服务器上安装好了nginx,现在可以开始配置并使用它来造作了哈哈。

第一步: 认识nginx的相关文件及位置
在Linux中Nginx 的各种配置文件存储在 /etc/nginx 目录中;
日志文件 (access.log 和 error.log) 位于 /var/log/nginx/ 目录中;
浏览器访问Nginx 时候展示的内容文件位于 /usr/share/nginx 目录下的html目录中。此目录也是我们后面部署前后端分离项目的时候 前端项目dist包 存放位置,后面会经常用到所以要记住。

第二步: nginx的核心配置文件结构和位置
Linux中 Nginx 的主要的配置文件是 /etc/nginx/nginx.conf 。此文件是nginx实现负载均衡、请求代理转发、静态资源压缩等功能的基础,通过在该文件中配置相应模块实现以上功能。后面在分享前后端分离项目实战过程中会经常涉及修改nginx.conf 文件。


至此,已经在 Debian 10 Linux 上安装好了 Nginx 。到这里,我们的Linux服务器上跑项目所需的环境基本算是搭建完毕,从下一篇文章开始将分享前后端分离项目的前后端的打包、部署应用程序并配置 Nginx 用作 Web 或代理服务器。



总结

以上就是今天要分享的内容:安卓手机改造成Linux服务器后 安装与配置Redis、Nginx的详细过程。
下一篇将为大家分享的是:前后端分离项目的前、后端配置与打包过程,为改造后的安卓Linux服务器中部署前后端分离项目做准备。内容持续更新中,欢迎大家的阅读,如有不恰当之处欢迎指正。