Linux服务器软件安装教程及项目部署【建议收藏】

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: Linux服务器软件安装教程及项目部署【建议收藏】

一、工具安装

远程连接工具:Xshell、Xftp

通过SSH连接远程服务器!!!

二、安装包获取

1、Xshell、Xftp软件获取:关注公众号【SimpleMemory】,后台回复【Xshell+Xftp】即可获取。

2、本文档涉及软件安装包获取:

链接:https://pan.baidu.com/s/11m4dRSfbRpb_pQFDPbUzDw

提取码:on8j

链接:https://pan.baidu.com/s/1w1CLarmSmPlVpln-qinvNA

提取码:ku5d

三、软件安装篇

注:有时我们需要从另外的Linux服务器上复制相关安装包文件到本地服务器,可以使用以下命令操作

拷贝文件

  • 将本地服务器上的文件拷贝到远程服务器
scp /etc/profile root@192.168.108.9:/etc/profile
  • 将远程服务器上的文件拷贝到本地服务器
scp root@192.168.108.8:/etc/profile /etc/profile

拷贝文件夹

  • 将本地服务器上的文件夹拷贝到远程服务器
scp -r /usr/local/redis root@192.168.108.9:/usr/local/redis
  • 将远程服务器上的文件夹拷贝到本地服务器
scp -r root@192.168.108.8:/usr/local/redis /usr/local/redis

3.1、JDK安装

1、下载JDK安装包,并复制到服务器/opt目录下。

2、查看与卸载系统原先自带的openjdk

查看命令:rpm -qa \| grep java

卸载命令:rpm -e \--nodeps 文件名

3、安装jdk

切换到/opt目录下,执行下面命令:

rpm -ivh java-1.8.0-amazon-corretto-devel-1.8.0_232.b09-1.x86_64.rpm

4、查找安装路径,可以使用命令find / -name java查看实际安装路径。

默认安装在:

 /usr/lib/jvm/java-1.8.0-amazon-corretto 

5、配置环境变量,执行下面命令:vi /etc/profile ,并且向文件中追加如下内容:

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-amazon-corretto(以实际安装路径为准)
export CLASSPATH=.:$JAVA_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH

注:最后执行命令使配置生效!!!

source /etc/profile 

6、验证是否安装成功。

执行命令:若出现JDK版本信息,则说明安装成功!

java -version

3.2、Redis安装

linux安装redis主要有2种方式,第一种安装方式为直接使用yum命令安装(前提是服务器能联网),另外一种安装方式为源码编译安装,redis官网有详细介绍,这里主要以yum命令的安装方式来举例说明,操作步骤如下:

1、 启动xshell,并且连接到linux机器。

2、 安装redis,执行命令yum -y install redis,然后系统会自动安装redis

3、 启动redis,执行命令systemctl start redis

4、 设置redis开机自动启动,执行命令systemctl enable redis

5、 验证结果,执行命令ps aux\|grep redis,输出结果有redis进程,则表示安装成功。

源码编译安装如下

1、把组件包复制到/usr/local目录。

2、切换到/usr/local目录,使用以下命令解压:

tar -zxvf 04-redis-5.0.4.tar.gz

3、解压完成,在此文件夹下面出现redis-5.0.4文件夹!!!

--使用下面命令查看
ls

4、 进入解压后的目录中使用下面命令进行编译:

make 

5、完成编译后进行安装!!!

  make PREFIX=/usr/local/redis install   (/usr/local/redis为指定的安装目录)

注:

  • 关键字 PREFIX= 这个关键字的作用是编译的时候用于指定程序存放的路径,假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录;库文件会存放在/usr/local/lib目录;配置文件会存放在/usr/local/etc目录;其他的资源文件会存放在usr/local/share目录。这里指定号目录也方便后续的卸载,后续直接rm -rf /usr/local/redis 即可删除redis
  • 安装完后会在/usr/local/redis下出现一个bin目录bin目录中就是我们要使用的内容。

6、准备配置文件,Redis服务在启动的时候可以指定配置文件,我们可以从redis的源码目录中拷贝一份配置文件模板到redis的安装目录

切换到源码文件夹:

cp redis.conf /usr/local/redis/bin

7、启动redis

切换到/bin目录,运行./redis-server redis.conf (redis.conf为redis的配置文件,可自行指定位置)

./redis-server redis.conf 

8、修改配置,修改配置文件redis.conf中的内容!!!

(1)用后端模式启动————修改daemonize为yes
    注:不修改daemonize为yes也可以,即上面的命令修改为./redis-server redis.conf &
(2)关闭安全模式————修改protected-mode为no
(3)需要远程链接————注释掉bind
(4)设置密码——如果需要密码,则将 requirepass foobared 前的注释去掉,foobared 替换为要设置的密码!!!

注:可以通过下面命令快速定位到以上的关键字信息,

/关键字 
回车
按下小写n,向下查找 
按下大写N,向上查找   

8、 查看Redis是否正在运行

ps -aux | grep redis

3.3、nginx安装

Linux安装nginx主要有2种方式:

  • 第一种安装方式为直接使用yum命令安装(前提是服务器能联网)!!!
  • 第二种安装方式为源码编译安装,nginx官网有详细介绍,

这里主要以yum命令的安装方式来举例说明,操作步骤如下:

1、 启动xshell,并且连接到linux机器。

2、 安装nginx,执行命令yum -y install nginx,然后系统会自动安装nginx

3、 启动nginx,执行命令systemctl start nginx

4、 设置nginx开机自动启动,执行命令systemctl enable nginx

5、 验证结果,执行命令ps aux\|grep nginx,输出结果有nginx进程,则表示安装成功

(1)查看nginx的版本
nginx -v
(2)查看nginx的默认端口(80)
netstat -ntlp
(3)以下是Nginx的默认路径:
(3.1) Nginx配置路径:/etc/nginx/
(3.2) PID目录:/var/run/nginx.pid
(3.3) 错误日志:/var/log/nginx/error.log
(3.4) 访问日志:/var/log/nginx/access.log
(3.5) 默认站点目录:/usr/share/nginx/html
(4)不知道位置的情况下使用find命令检索一下电脑 :
find / -name nginx.conf
(5)nginx的常用相关命令:
nginx -v         #查看版本
nginx            #启动命令
nginx -s stop    #停止
nginx -t         #修改完nginx.conf后检查语法是否正确
nginx -s -reload #重启(修改完配置文件可以使用此命令重新加载配置文件)

源码编译安装

1、把nginx的组件包复制到服务器的usr/local目录下面。

2、使用下面命令解压压缩包。

tar -zxvf 03-nginx-1.10.2.tar.gz 

3、解压完成后,在该目录下面出现nginx-1.10.2文件夹。

4、进入解压完成的nginx-1.10.2文件夹,进行编译。

./configure --prefix=/usr/local/nginx && make && make install

5、测试

切换到下面目录:

 /usr/local/nginx/sbin
输入   ./nginx

在浏览器中输入ip地址即可!!!

注:安装常常遇到的问题解决方法。

1、编译Nginx提示gzip module requires the zlib library

https://blog.csdn.net/snihcel/article/details/38677655

2、nginx启动提示:nginx: [emerg] the INET6 sockets are not supported on this platform in \"[::]:80\" of the \"listen\" dir错误信息。

原因:服务器不支持ipv6

解决方法:注释配置文件nginx.conf 中:

3.4、Nacos安装

1、将安装包nacos-server-1.4.2.tar.gz上传到服务器的/usr/local目录!

2、输入下面命令进行解压。

tar -zxvf nacos-server-1.4.2.tar.gz

3、解压完成后,在该目录将会出现nacos目录。

4、用cd命令切换到nacos目录,使用下面命令启动nacos

./bin/startup.sh -m standalone

5、测试。在浏览器地址栏中输入下面地址

http://ip:8848/nacos

用户名nacos、密码nacos,登录成功!!!

3.5、kafka安装

https://blog.csdn.net/qq_33358864/article/details/115408458

3.6、rabbitmq的安装(使用Docker方式)

1、查看是否已经安装docker列表。

yum list installed | grep docker

2、使用下面命令安装docker

yum -y install docker

注:y表示不询问安装,直到安装成功 !!!

3、启动docker

systemctl start docker

4、查看docker的服务状态。

systemctl status docker

5、拉取rabbitmq镜像。

docker pull rabbitmq:3.7.7-management

6、查看镜像。

docker images 

7、根据镜像创建和启动容器。

docker run -d --name rabbitmq3.7.7 -p 5672:5672 -p 15672:15672 -v `pwd`/data:/var/lib/rabbitmq --hostname myRabbit -e RABBITMQ_DEFAULT_VHOST=my_vhost  -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=admin 镜像id

注:

-d 后台运行容器;

--name 指定容器名;

-p 指定服务运行的端口(5672:应用访问端口;15672:控制台Web端口号);

-v 映射目录或文件;

--hostname 主机名(RabbitMQ的一个重要注意事项是它根据所谓的 "节点名称" 存储数据,默认为主机名);

-e 指定环境变量;(RABBITMQ_DEFAULT_VHOST:默认虚拟机名;RABBITMQ_DEFAULT_USER:默认的用户名;RABBITMQ_DEFAULT_PASS:默认用户名的密码)

8、查看正在运行的容器。

docker ps 

9、查看web界面。

http://192.168.3.113:15672/#/
Windows安装
1、软件安装包获取。
下载地址:
Erlang: http://erlang.org/download/otp_win64_21.3.exe

RabbitMq: https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.7.14

2、软件安装。

2.1、安装Erlang

双击软件otp_win64_21.3.exe即可安装。

2.2、RabbitMq 安装

双击软件rabbitmq-server-3.7.14.exe即可安装。

安装完成后,进入安装目录的sbin目录。

在地址栏中输入cmd,然后输入以下命令启动管理功能。

rabbitmq-plugins enable rabbitmq_management

然后访问地址:http://localhost:15672/验证是否安装成功。

七、Oracle数据库的安装(Windows)

1、Oracle安装包下载。

进入Oracle数据库官网http://www.oracle.com/ 下载相应的版本,下载完成后将两个压缩包解压到同一个目录下面!!!

在这里我统一解压到C:\soft\database目录!

2、安装,双击上面解压目录文件的setup.exe文件安装。

参考教程:https://www.cnblogs.com/gengshao/p/10764248.html

3.7、Maven的安装

1、将安装包apache-maven-3.6.3-bin.tar.gz上传至服务器的/root/soft目录下面。

2、使用下面命令进行解压。

tar -zxvf apache-maven-3.6.3-bin.tar.gz

3、解压成功后,在该目录出现apache-maven-3.6.3文件夹。

4、修改Maven的镜像源为阿里云。

用vi编辑器,打开/apache-maven-3.6.3/conf/settings.xml配置文件,并在标签对\< mirrors\>\</ mirrors\>⾥添加如下内容即可:

<mirror>

<id>alimaven</id>

<name>aliyun maven</name>

<url>http://maven.aliyun.com/nexus/content/groups/public/</url>

<mirrorOf>central</mirrorOf>

</mirror>

5、配置环境变量。编辑修改/etc/profile文件,并在文件尾部追加以下内容:

export MAVEN_HOME=/root/soft/apache-maven-3.6.3

export PATH=&dollar;MAVEN_HOME/bin:&dollar;PATH

6、最后,使用下面命令使Maven的配置生效。

source /etc/profile

7、结果验证。

执行命令mvn -v ,若打印出Maven的版本信息说明安装、配置成功!

3.8、Docker 环境安装

1、安装Docker。

yum install -y docker

2、开启Docker服务。

systemctl start docker.service

3、查看安装结果。

docker version

4、设置开机自动启动。

systemctl enable docker.service

5、配置Docker镜像下载加速。

编辑配置文件:vim /etc/docker/daemon.json

添加加速镜像源地址:

{

\"registry-mirrors\": \[\"http://hub-mirror.c.163.com\"\]

}

6、配置完成后,使用下面命令,重新加载配置文件,重启Docker服务

systemctl daemon-reload

systemctl restart docker.service

3.9、Node的安装

1、将安装包Node的安装包node-v12.16.3-linux-x64.tar.xz上传至服务器/root/soft目录下面。

2、上传成功后,使用下面命令进行解压。

tar -xJvf node-v12.16.3-linux-x64.tar.xz

注意:tar.xz的文件,是两层压缩,外面是xz压缩,里层是tar压缩,因此分两步实现解压。

xz -d node-v12.16.3-linux-x64.tar.xz

tar -xvf node-v12.16.3-linux-x64.tar.xz

当然可以直接进行解压:

tar -xJvf node-v12.16.3-linux-x64.tar.xz

3、解压完成后,在该文件下面出现node-v12.16.3-linux-x64的文件夹。

4、Node系统环境变量的配置。

使用vi编辑器,编辑文件/etc/profile文件,并在尾部追加以下配置信息:

export PATH=/root/soft/node-v12.16.3-linux-x64/bin:\$PATH

5、使用下面命令,使Node配置生效。

source profile

6、使用下面命令,进行结果验证。

node -v
npm version
npx -v

3.10、Mysql的安装

1、下载Mysql的软件安装包,并上传至服务器的/root/soft目录下面。

2、若系统自带MARIADB,并首先将其卸载。

2.1、查询已经安装的MARIADB安装包。

rpm -qa\|grep mariadb

2.2、进行卸载。

yum -y remove mariadb-server-5.5.56-2.el7.x86_64

3、软件安装包上传成功后,使用下面命令将其解压。安装包解压到/usr/local目录下面,并重新命名为mysql。

tar -zxvf /root/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz -C /usr/local/

mv mysql-5.7.30-linux-glibc2.12-x86_64 mysql

4、创建mysql的用户和用户组。

groupadd mysql

useradd -g mysql mysql

5、在usr/local/mysql目录下面创建目录data;后面的步骤将会使用到。

6、修改mysql目录的归属用户。

chown -R mysql:mysql ./

7、准备mysql的配置文件。在etc目录下面创建文件my.cnf文件。并写入如下内容:

[mysql]

# 设置mysql客户端默认字符集

default-character-set=utf8

socket=/var/lib/mysql/mysql.sock

[mysqld]
skip-name-resolve

#设置3306端⼝
port = 3306
socket=/var/lib/mysql/mysql.sock

# 设置mysql的安装⽬录
basedir=/usr/local/mysql

# 设置mysql数据库的数据的存放⽬录
datadir=/usr/local/mysql/data

# 允许最⼤连接数
max_connections=200

# 服务端使⽤的字符集默认为8⽐特编码的latin1字符集
character-set-server=utf8

# 创建新表时将使⽤的默认存储引擎
default-storage-engine=INNODB

lower_case_table_names=1

max_allowed_packet=16M

8、同时使⽤如下命令创建 /var/lib/mysql ⽬录,并修改权限:

mkdir /var/lib/mysql

chmod 777 /var/lib/mysql

9、开始安装mysql

cd /usr/local/mysql

./bin/mysqld \--initialize \--user=mysql \--basedir=/usr/local/mysql \--datadir=/usr/local/mysql/data

注意:在上面命令执行完成后,记住root@localhost后面的密码。

10、复制启动脚本到资源⽬录。

cp ./support-files/mysql.server /etc/init.d/mysqld

11、修改/etc/init.d/mysqld 文件,修改其basedir和datadir为实际的对应目录。

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

12、设置MYSQL系统服务并开机⾃启。

12.1、⾸先增加 mysqld 服务控制脚本执⾏权限:

chmod +x /etc/init.d/mysqld

12.2、mysqld 服务加⼊到系统服务:

chkconfig \--add mysqld

12.3、最后检查 mysqld 服务是否已经⽣效即可:

chkconfig \--list mysqld

13、启动mysql

执行下面命令:

service mysqld start

14、将 MYSQLBIN ⽬录加⼊ PATH 环境变量

编辑文件/etc/profile文件,在尾部追加以下信息;

export PATH=\$PATH:/usr/local/mysql/bin

15、使用下面命令使配置的环境变量生效。

source profile

16、首次登录mysql。使用上面步骤的默认密码进行登录。

mysql -u root -p

17、修改mysql密码。

在mysql的命令⾏执⾏如下命令即可,密码可以换成你想⽤的密码即可:

mysql\>alter user user() identified by \"123456\";

mysql\>flush privileges;

这里将密码修改为了123456

17、设置远程主机登录。

mysql\> use mysql;

mysql\> update user set user.Host=\'%\' where user.User=\'root\';

mysql\> flush privileges;

18、使用navicate工具可以连接了!!!

四、项目部署篇

注:前后端分离项目部署

4.1、前端部署

1、打包应用。

# 打包正式环境
npm run build:prod

2、打包成功之后,根目录将会生成 dist 文件夹,里面就是构建打包好的文件,通常是 ***.js***.cssindex.html 等静态文件。

3、将dist文件夹复制到服务器。这里我放在了下面的这个路径下面!!!

/usr/local/web/dist

4、配置nginx。在nginx.conf配置文件中,修改配置为以下内容:

 listen       80;
        server_name  118.31.187.5;  # 别写localhost
location / {
            root   /usr/local/web/dist;  # 前端工程的目录
            index  index.html;     # 前端页面
            try_files $uri $uri/ /index.html;
        }
        location /prod-api/ {     # 反向代理到后端工程
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://localhost:8088/;
        }

5、重新启动nginx。

nginx -s reload

4.2、后端部署

1、修改项目的Mysql数据库、RedisFastdfs连接配置

2、打包工程文件。运行项目中的bin目录下执行package.bat打包Web工程,生成jar包文件。 然后会在项目下的target文件夹下面生成对应的jar包!!!

3、将打包好的jar包上传到服务器。在这里为了方便,和前端项目放在同一个目录下面!!!

 /usr/local/web

4、用后台的方式启动后端工程。

nohup java -jar xx_web.jar >/dev/null 2>&1 &

5、查看端口占用。

netstat -tunlp | grep   8088

6、杀掉对应的进程。

kill -9 PID

4.3、运行脚本

在服务器上项目jar包的同级目录下面,创建文件xxx.sh,在该文件下面写入以下内容:

nohup java -jar -Xms200m -Xmx200m -Dfile.encoding=utf-8  manage-admin.jar \>/dev/null 2\>&1 &

执行上面脚本即可启动项目!

注:Linux下面运行.sh文件的方法:

1、使用./加上文件名.sh,例如:运行hello.sh文件,./hello.sh。(hello.sh必须具有x执行权限)。

2、使用sh加上文件名.sh,例如:运行hello.sh文件,sh hello.sh。(hello.sh可以没有x执行权限)。

4.4、项目启动测试

1、在浏览器地址栏中输入下面访问地址,验证系统是否正常操作

http://118.31.187.5/

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
9天前
|
监控 Linux Shell
|
12天前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
31 5
Linux系统之安装Ward服务器监控工具
|
2天前
|
人工智能 安全 Linux
|
4天前
|
Linux 数据库
Linux服务如何实现服务器重启后的服务延迟自启动?
【10月更文挑战第25天】Linux服务如何实现服务器重启后的服务延迟自启动?
31 3
|
7天前
|
弹性计算 安全 网络安全
阿里云服务器租用流程,四种阿里云服务器租用方式图文教程参考
阿里云服务器可以通过自定义租用、一键租用、云市场租用和活动租用四种方式去租用,不同的租用方式适合不同的用户群体,例如我们只是想租用一款配置较低且可以快速部署应用的云服务器,通常可以选择一键租用或者云市场租用,本文为大家展示不同租用方式的适合对象以及租用流程,以供初次租用阿里云服务器的用户参考和选择。下面是阿里云服务器租用的图文操作步骤。
|
7天前
|
存储 安全 关系型数据库
Linux系统在服务器领域的应用与优势###
本文深入探讨了Linux操作系统在服务器领域的广泛应用及其显著优势。通过分析其开源性、安全性、稳定性和高效性,揭示了为何Linux成为众多企业和开发者的首选服务器操作系统。文章还列举了Linux在服务器管理、性能优化和社区支持等方面的具体优势,为读者提供了全面而深入的理解。 ###
|
10天前
|
关系型数据库 MySQL Linux
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
基于阿里云服务器Linux系统安装Docker完整图文教程(附部署开源项目)
105 2
|
15天前
|
弹性计算 开发框架 .NET
阿里云服务器购买教程及云服务器地域、实例、操作系统、带宽等参数选择指南
对于初次购买阿里云服务器的用户来说,想使用阿里云服务器搭建网站或者运行APP、小程序等项目,第一步就是要先购买阿里云服务器,下面小编以图文形式给大家介绍一下阿里云服务器的购买流程,以及购买过程中如何云服务器地域、实例、带宽等关键配置和选择这些参数的一些注意事项,以供参考。
|
2天前
|
Linux
Linux 修改服务器时间
【10月更文挑战第27天】Linux 修改服务器时间
10 0
|
5天前
|
缓存 监控 Linux
Python 实时获取Linux服务器信息
Python 实时获取Linux服务器信息