一. 安装JDK
1.1 准备工作
确保系统中没有其它已安装的jdk,输入命令:rpm -qa | grep java,如果有,使用命令rpm -e --nodeps 卸载已安装的jdk
切换到root用户并进入usr目录: cd /usr
在usr目录下创建software文件夹
将jdk-8u181-linux-x64.tar.gz拷贝或上传到/usr/software目录下(可借助Xftp等工具)
进入/usr/software文件夹下:cd /usr/software/
1.2 安装步骤:
修改权限,参数“jdk-8u181-linux-x64.tar.gz”为你自己上传的jdk安装文件
- 755 jdk-8u181-linux-x64.tar.gz
解压:tar -zxvf jdk-8u181-linux-x64.tar.gz
1.3 配置环境变量
vi /etc/profile
添加内容
export JAVA_HOME=/www/wwwroot/soft/jdk1.8.0_181
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME PATH CLASSPATH
- JAVA_HOME=/usr/software/jdk1.8.0_181
- PATH=$PATH:$JAVA_HOME/bin
- CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
- JAVA_HOME PATH CLASSPATH
重新编译环境变量:source /etc/profile
检查是否安装成功,输入命令:java -version
编写java代码测试jdk的安装0
Nacos sh startup.sh -m standalone]
宝塔 /etc/init.d/bt default
二. 安装Tomcat
注意:关闭防火墙
2.1 准备工作
1、 切换到/usr下:cd /usr/software
2、 创建tomcat目录:mkdir tomcat
3、 进入tomcat的目录中:/usr/software/tomcat
2.2 安装步骤
上传tomcat压缩包到/usr/software/tomcat目录
修改权限:chmod 755 apache-tomcat-8.5.33.tar.gz
解压tomcat压缩文件:tar -zxvf apache-tomcat-8.5.33.tar.gz
2.3 启动tomcat
进入tomcat的bin目录:cd /usr/software/tomcat/apache-tomcat-8.5.33/bin
启动tomcat web服务器:./startup.sh 或者 sh startup.sh
访问:http://192.168.206.101:8080/(不唯一)
2.4 Centos开放8080端口-使用firewalld操作
CentOS 7.0默认使用的是firewall作为防火墙。
在当前的centos7的版本中,iptables系统已不再支持,即使已经安装成功,并且成功运行,系统也不会识别iptables的拦截 也就是说,在当前的centos7中,即使开启了iptables,不开放任何端口,宿主机也可以访问虚拟机的任意端口
- 检查firewalld状态
systemctl status firewalld
当前是masked状态,是无法安装firewalld的,需要执行以下操作
systemctl unmask firewalld
查看当前firewalld状态
systemctl status firewalld
- 安装firewalld防火墙
yum install firewalld
- 启动firewalld防火墙
systemctl start firewalld
查看状态:
- 开机自动启动
systemctl enable firewalld
- 开启端口
永久开放8080端口
firewall-cmd --permanent --zone=public --add-port=8080/tcp
firewall-cmd --zone=public --add-port=8080-8090/tcp //临时
- 查看某些端口打开了
firewall-cmd --permanent --zone=public --list-ports
- 开放端口之后,一定要重新加载firewalld配置
firewall-cmd --reload
2.5 开机自动启动
将apache-tomcat-8.5.34修改为tomcat8(名字太长,不方便后面配置)
进入tomcat/bin目录下,修改setclasspath.sh
在setclasspath.sh的文件中的
这行前面增加下面两行:
export JAVA_HOME=/usr/software/jdk1.8.0_181
export JRE_HOME=/usr/software/jdk1.8.0_181/jre
在tomcat8/bin 目录下面,新增 setenv.sh配置,catalina.sh启动的时候会自动调用,配置内容如下:
#add tomcat pid
CATALINA_PID="$CATALINA_BASE/tomcat.pid"
在/usr/lib/systemd/system目录下增加tomcat.service,目录必须是绝对目录
内容如下:注意tomcat8的路径是否一致,不一致,就需要修改
[Unit]
Description=Tomcat
After=syslog.targetnetwork.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/software/tomcat8/tomcat.pid
ExecStart=/usr/software/tomcat8/bin/startup.sh
ExecReload=/bin/kill-s HUP $MAINPID
ExecStop=/bin/kill-s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
- 设置开机启动
systemctl enable tomcat.service
- 启动
systemctl start tomcat.service
- 查看状态
systemctl status tomcat.service
2.6 其它
停止tomcat:./shutdown.sh
查看tomcat日志信息:
tail -200f /usr/software/tomcat/apache-tomcat-8.5.33/logs/catalina.out
200表示最后显示行数
用组合命令,启动并查看日志:
进入tomcat的bin目录
./startup.sh && tail -200f ../logs/catalina.out
三、安装MySQL
3.1 卸载CentOS7自带的mariadb数据库
查看是否有自带的mariadb: rpm -qa | grep mariadb
卸载自带的mariadb数据库
- rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
3.2 准备工作
切换到/usr/local下:cd /usr/software
创建mysql目录:mkdir mysql
上传安装包/usr/software/mysql目录
安装mysql需要依赖的:perl
yum install net-tools
- -y install perl perl-devel
- install -y perl-Module-Install.noarch
3.3 安装步骤
解压安装包:
- mysql目录 : /usr/software/mysql
- chmod 777 *
- tar -xvf MySQL-5.6.36-1.el6.x86_64.rpm-bundle.tar
安装服务器:ls
- chmod 777 *
- rpm -ivh MySQL-server-5.6.36-1.el6.x86_64.rpm --nodeps --force
- --nodeps --force 表示不检查依赖
安装客户端:client
- chmod 777 *
- rpm -ivh MySQL-client-5.6.36-1.el6.x86_64.rpm --nodeps --force
启动和关闭mysql
- mysql: systemctl start mysql
- mysql: systemctl stop mysql
- mysql: systemctl restart mysql
3.4 修改mysql配置
3.4.1 添加或修改密码
如果是安装的5.6,会生成随机密码,在安装service端的日志中有如下内容:
进入该文件查看密码:cat /root/.mysql_secret
使用这个密码登录 mysql –uroot –p密码
登录mysql之后,修改密码:SET PASSWORD = PASSWORD('123456');
3.4.2 设置允许远程连接mysql
测试一:
使用宿主机的数据库客户端尝试使用远程连接,发现报错:
原因一:未开放3306端口号
开放3306端口
#开放3306端口
firewall-cmd --permanent --zone=public --add-port=3306/tcp
# 查看端口打开情况
firewall-cmd --permanent --zone=public --list-ports
# 重新加载firewall防火墙
firewall-cmd --reload
上述错误错误原因:数据库不允许该客户端访问mysql服务器,因为没有远程权限导致的
解决方案:
(1)进入 mysql:
mysql -u root -p123456
(2)使用 mysql库:
use mysql;
(3)查看用户表 :
SELECT Host,User FROM user;
(4)授权用户 :
grant all privileges on *.* to root@'%' identified by '123456';
(5)强制刷新权限:
flush privileges;
- 连接成功
- 安装redis
1.1 安装步骤
1:上传redis安装包
2:解压压缩包:tar -zxvf redis-4.0.0.tar.gz
3:yum安装gcc依赖:yum install gcc
4:跳转到redis解压目录下
cd redis-4.0.0
5:编译
make MALLOC=libc
6:安装
cd src && make install
7:测试是否安装成功
先切换到redis src目录下
1、直接启动redis
./redis-server
1.2、以后台进程方式启动redis
如1.1的方式:redis启动成功,但是这种启动方式需要一直打开窗口,不能进行其他操作,不太方便。按 ctrl + c可以关闭窗口。
下面可以使用后台进程的方式启动redis
第一步:修改redis-4.0.0/redis.conf文件
将
`daemonize no `
修改为
`daemonize yes`
第二步:指定redis.conf文件启动
启动方式一: ./redis-server ../redis.conf
启动方式二:绝对路径
./redis-server /usr/software/redis-4.0.0/redis.conf
第三步:关闭redis进程
首先使用ps -aux | grep redis查看redis进程
使用kill命令杀死进程
kill -9 3009
1.3 设置允许远程访问redis
1、开放6379端口
#开放6379端口
firewall-cmd --permanent --zone=public --add-port=6379/tcp
# 查看端口打开情况
firewall-cmd --permanent --zone=public --list-ports
# 重新加载firewall防火墙
firewall-cmd --reload
2、开放端口之后,发现连接还是失败
3、需要修改redis4.0.0/redis.conf文件,将127.0.0.1修改成0.0.0.0,如图所示
1.4 设置redis开机自启动
1、在/etc目录下新建redis目录
mkdir redis
2、将/usr/local/redis-4.0.0/redis.conf 文件复制一份到/etc/redis目录下,并命名为6379.conf
cp /usr/software/redis-4.0.0/redis.conf /etc/redis/6379.conf
3、将redis的启动脚本复制一份放到/etc/init.d目录下
cp /usr/software/redis-4.0.0/utils/redis_init_script /etc/init.d/redisd
4、设置redis开机自启动
先切换到/etc/init.d目录下
使用vim编辑redisd文件,在第二行加入如下两行注释,保存退出
# chkconfig: 2345 90 10
# description: Redis is a persistent key-value database
注释的意思是,redis服务必须在运行级2,3,4,5下被启动或关闭,启动的优先级是90,关闭的优先级是10。
5、执行开机自启命令,成功
chkconfig redisd on
现在可以直接已服务的形式启动和关闭redis了
启动:
service redisd start
关闭:
service redisd stop
作业:安装elasticsearch
提醒:elasticsearch的运行不能使用root账号
- 安装ElasticSearch--不能使用root账户运行
1.1 新建一个用户
1:新建用户命令:useradd bos
2:设置密码:passwd bos
3:出于安全考虑,elasticsearch默认不允许以root账号运行
切换用户:su - bos
1.2安装步骤
1:上传elasticsearch安装包/home/bos目录下
2:解压压缩包:tar -zxvf elasticsearch-6.2.4.tar.gz
3:跳转到elasticsearch-6.2.4解压目录下
cd elasticsearch-6.2.4
4:修改配置文件./config/jvm.options
默认配置如下:
-Xms1g
-Xmx1g
内存占用太多了,我们调小一些:
-Xms512m
-Xmx512m
5 修改配置文件elasticsearch.yml
a、修改数据和日志记录
path.data: /home/bos/data
path.logs: /home/bos/logs
b、修改绑定的IP地址
network.host: 0.0.0.0 # 绑定到0.0.0.0,允许任何ip来访问
- 修改节点的名字
6:创建data和logs文件夹
mkdir data
mkdir logs
7:运行
先切换到elasticsearch/bin目录下
1、直接启动elasticsearch
./elasticsearch
- 报错1:java.nio.file.AccessDeniedException: /data/wwwroot/elasticsearch-6.2.4/config/jvm.options
原因:当前用户没有执行权限
解决方法: chown linux用户名 elasticsearch安装目录 -R
本题解法:
切换到root用户下:su - root,然后执行chown bos /home/bos -R
3 继续运行,报错2:
max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
max number of threads [1024] for user [lishang] likely too low, increase to at least [2048]
解决:切换到root用户,编辑limits.conf 添加类似如下内容
vi /etc/security/limits.conf
添加如下内容:
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
4 继续运行,报错3:max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
解决:切换到root用户修改配置sysctl.conf
vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
并执行命令:
sysctl -p
4 运行,OK
1.3 后台运行
nohup./bin/elasticsearch&
1.4 开放9200和9300端口
#firewall-cmd --permanent --zone=public --add-port=9200/tcp //永久
#firewall-cmd --permanent --zone=public --add-port=9300/tcp //永久
#firewall-cmd --permanent --zone=public --list-ports //查看端口使用情况
1.5.1.安装ik分词器
上传课前资料中的zip包:
使用unzip命令解压:yum install unzip
unzip elasticsearch-analysis-ik-6.2.4.zip
得到一个名为elasticsearch的目录,并将其改名为ik-analyzer
mv elasticsearch ik-analyzer
然后将ik-analyzer目录移动到elasticsearch/plugin目录下
mv ./ik-analyzer/ ./elasticsearch-6.2.4/plugins/
重启elasticsearch:
- 安装activeMQ
略。
- 安装nginx
1.1 首先安装Nginx需要的环境(新环境或未安装过,请执行此步)
1.安装gcc。编译依赖gcc环境,如果没有gcc环境,需要安装gcc。
yum install gcc-c++
gcc百度百科:https://baike.baidu.com/item/gcc/17570
2.安装PCRE。Nginx的http块会使用PCRE来解析正则表达式。
yum install -y pcre pcre-devel
PCRE百度百科:https://baike.baidu.com/item/PCRE
3.安装zlib。Nginx的http模块会使用zlib来对http包的内容进行gzip。
yum install -y zlib zlib-devel
zlib百度百科:https://baike.baidu.com/item/zlib
4.安装openssl。Nginx支持http协议和https协议,需要在ssl协议上传输http。
yum install -y openssl openssl-devel
openssl百度百科:https://baike.baidu.com/item/openssl
按照以上四步,环境准备工作就OK了。下面进行Nginx的编译安装。
1.2、Nginx的编译安装
1.下载Nginx,本地下载或者wget
Nginx下载地址:http://nginx.org/download/
选择你喜欢的版本,下载
wget http://nginx.org/download/nginx-1.16.1.tar.gz
2.解压
tar -zxvf nginx-1.16.1.tar.gz
3.进入安装包路径
cd nginx-1.16.1
4.执行./configure
./configure --prefix=/home/xxx/xxx/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-http_realip_module --with-http_sub_module --with-http_ssl_module
/home/xxx/xxx是你机器上Nginx的安装路径,/nginx是你机器上Nginx的安装文件夹。凭实际情况可以自己进行指定。
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-http_realip_module --with-http_sub_module --with-http_ssl_module
源代码目录:/usr/software/nginx-1.16.1
安装目录:/usr/local/nginx
源代码目录和安装目录不能相同,相同,安装肯定失败!!!!!
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-http_realip_module --with-http_sub_module --with-http_ssl_module
5.安装和编译
make && make install
6. 查看Nginx版本
cd /home/xxx/xxx/nginx/sbin
./nginx -v
进入Nginx的安装文件夹,在里面找到/sbin文件。执行 ./nginx -v
7.查看Nginx是否安装成功
在Nginx的安装路径/sbin 下执行 ./nginx 启动Nginx
访问对应IP,由于我们没有配置Nginx的相关信息。Nginx的端口号默认监听的80。所以我们不用输入端口号。
403。。。
退回到Nginx的安装路径并进去到配置文件夹中。
cd ../conf
vi nginx.conf
输入 i 将#user nobody; 修改为 user root;
esc 然后输入:wq
进 /sbin 重新启动Nginx。
cd ../sbin
./nginx -s reload
再次访问该IP地址。
至此,Nginx 安装成功。
- 项目运行
项目都要部署到linux中
1.1 导入mysql数据
1.2后端项目打包
第一步:修改数据库地址
注意:pom文件中需要加一个打包的(百度可查)
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
<goal>build-info</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
第二步:将项目的打包方式改成jar
第三步:上传到服务器
第四步:运行
1.3前端项目打包运行
第一步:修改ajax地址
第二步:前端项目打包:
第三步:上传到nginx服务器
第四步:重启nginx
第四步:开放端口
firewall-cmd --permanent --zone=public --add-port=8090/tcp //永久
firewall-cmd --reload
项目运行成功!!!
注意:每个项目打包方法有一点点区别