阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分

一站搭建阿里云linux服务器所需环境

  • 搭建mysql 5.7.26 数据库
  • 安装jdk1.8
  • 安装tomcat
  • 配置tomcat日志生成按日期生成以及定时删除日志
  • 安装redis服务
  • 安装nginx
  • 配置nginx域名转发(去掉端口号)
  • 配置nignx ssl证书(https协议)
  • 安装svn服务并上传项目

.-------------------------------------------------------------------------------------------------------------------.
此文中所有搭建的环境都是笔者亲测,在客户刚购买的服务器进行安装并部署项目能够运行的。
笔者提供安装包,大家也可以自行去官网下载安装包。参考:
链接:百度网盘
提取码:axzx
.-------------------------------------------------------------------------------------------------------------------.

搭建mysql 5.7.26 数据库

  1. 将mysql上传至linux服务器(笔者上传至/usr/local目录下)
  2. 解压mysql解压包
tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
  1. 重命名目录名
重命名:mv mysql-5.7.26-linux-glibc2.12-x86_64/ mysql-5.7.26
  1. 创建用户组和用户。
创建用户组:groupadd mysql
创建用户:useradd -r -g mysql mysql

  1. 创建mysq数据目录

创建data目录

cd /
mkdir -p data
cd data/
mkdir -p mysql

赋予权限

chown mysql:mysql -R /data/mysql
  1. 配置参数
vim /etc/my.cnf

然后 按 i 进入编辑模式,把下面内容复制进去


[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql     
basedir=/usr/local/mysql-5.7.26
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/data/mysql/mysql.err
pid-file=/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0

备注 :此处有个坑,笔者在后面启动的时候一直报错,如下
在这里插入图片描述
可以试着把 user=mysql 改成user=root 试一下,笔者把配置信息都看了,尝试性改了这里后,就可以启动成功了。

  1. 初始化mysql
cd /usr/local/mysql-5.7.26/bin/
 ./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql-5.7.26/ --datadir=/data/mysql/ --user=mysql --initialize

笔者在这遇到个报错:
在这里插入图片描述
出现该问题首先检查该链接库文件有没有安装使用 命令进行核查

rpm -qa|grep libaio 

使用命令安装

yum install  libaio-devel.x86_64

安装成功后,在初始化数据库,即可成功。

  1. 查看初始密码,复制出来
vim /data/mysql/mysql.err
  1. 启动数据库

这儿有两个命令,都可以试试

service mysqld start
service mysql start

若可以直接启动成功,跳过下面的脱坑教程。此处以分割线分割
/------------------------------------------------------------start---------------------------------------------------------------

附上脱坑完整命令图:
阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第1张图片

查看是否启动

ll /etc/init.d/ | grep mysql
发现该目录下并没有mysql的文件,若存在,请备份一下

查询mysql.server

find / -name mysql.server
mysql.server一般在你安装的mysql目录下,自己是编译安装,所以知道目录在哪里,不知道的这样看一下

在这里插入图片描述

执行复制操作,/usr/local/mysql-5.7.26/是我自己的mysql安装目录,大家根据查询出来的结果复制

cp /usr/local/mysql-5.7.26/support-files/mysql.server /etc/init.d/mysql

再次尝试启动Mysql:
在这里插入图片描述
目录文件不存在,那么那么久好解决了

mkdir /var/log/mariadb
touch /var/log/mariadb/mariadb.log

如果此处启动仍然报错,在这里插入图片描述
将my.cnf文件中的user=mysql 改成user=root
/----------------------------------------------------------end----------------------------------------------------------------------

ps -ef|grep mysql

在这里插入图片描述

  1. 更改密码
cd /usr/local/mysql-5.7.26/bin
./mysql -u root -p

提示输入密码,把刚才赋值的密码粘过来。

SET PASSWORD = PASSWORD('123456');
 
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
 
flush privileges;

到此数据库安装完毕。但是仍然还无法使用工具登录数据库。
原因:
①安全组
②防火墙未开放
③允许用户root从远程登录Mysql

  1. 允许用户root从远程登录Mysql
登录:
mysql -u root -p

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY 'password' WITH GRANT OPTION;
##注意此处的password是刚才设置的密码

flush privileges;
  1. 开端防火墙端口

开启端口3306

firewall-cmd --zone=public --add-port=3306/tcp --permanent

重启防火墙

firewall-cmd --reload

查看已经开放的端口

firewall-cmd --list-ports
  1. 添加安全组

阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第2张图片

至此,可以远程登录数据库连接了。
阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第3张图片

安装jdk1.8

  1. 上传安装包

笔者这里上传的目录是/usr/local

  1. 解压jdk文件
tar -xzvf jdk-8u201-linux-x64.tar.gz
  1. 环境变量配置

进入etc目录下通过vim命令进行编辑profile文件

vim profile

在末尾新增
export JAVA_HOME=/usr/local/jdk1.8.0_201
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}

然后,保存并退出(按:wq!)
  1. 让profile立即生效
source /etc/profile
  1. 查看是否安装成功
输入:java -version

在这里插入图片描述
至此,jdk已经安装成功了。

安装tomcat

  1. 上传安装包

上传目录至/usr/local

  1. 解压安装包
tar -zxvf apache-tomcat-9.0.30.tar.gz
  1. 查看8080端口是否被占用
netstat -tunlp | grep 8080
  1. 启动tomcat
cd /usr/local/apache-tomcat-9.0.30/bin
./startup.sh

在这里插入图片描述
此时tomcat虽然启动成功了,但xxx.xx.xxx.x:8080去访问,仍然无法访问,需要配置安全组规则和开放防火墙端口号

  1. 配置安全组

阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第4张图片

  1. 开放防火墙

开启端口8080

firewall-cmd --zone=public --add-port=8080/tcp --permanent

重启防火墙

firewall-cmd --reload

查看已经开放的端口

firewall-cmd --list-ports

此时在浏览器访问,tomcat配置成功
阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第5张图片

配置tomcat日志生成按日期生成以及定时删除日志

  1. 上传安装包

上传目录为/usr/local

  1. 解压安装包
tar -xvf cronolog-1.6.2.tar.gz 
  1. cronolog编译安装
cd cronolog-1.6.2
./configure
make && make install
  1. 查看cronolog安装后所在目录(验证安装是否成功)
which cronolog

在这里插入图片描述

  1. 修改Tomcat启动脚本catalina.sh
修改输出日志路径:
 if [ -z "$CATALINA_OUT" ] ; then
      CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out
fi
为:
    if [ -z "$CATALINA_OUT" ] ; then
      CATALINA_OUT="$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out
fi

在这里插入图片描述

删除生成日志文件:
注释:
touch "$CATALINA_OUT"
  为:
#touch "$CATALINA_OUT"

在这里插入图片描述

修改启动脚本参数(有2处):
修改:
      org.apache.catalina.startup.Bootstrap "$@" start \
      >> "$CATALINA_OUT" 2>&1 "&"
    为:
      org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \
      | /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &

阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第6张图片

  1. 重启tomcat服务

  2. 查看日志文件

在这里插入图片描述

安装redis服务

  1. 安装C语言编译器
 yum install gcc
  1. 将下载好的包上传或者使用命令
cd /usr/local
wget http://download.redis.io/releases/redis-5.0.4.tar.gz
  1. 解压redis
tar zxvf redis-5.0.4.tar.gz 
  1. 进入redis目录
cd redis-5.0.4/
  1. 安装redis
make
  1. 修改配置信息
vim redis.conf


# 设置后台运行
daemonize yes
# 设置数据库总量
databases 256
# 设置密码
requirepass 123456
# 设置日志文件
logfile ./redislog.log       -->  不设置
# 设置数据文件存储目录
dir ./      -->  不设置
  1. 运行redis
 ./src/redis-server redis.conf 
  1. 登录redis查看是否可以运行
cd src

./redis-cli

auth password

阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第7张图片
到这儿,redis就安装成功了。

安装nginx

  1. 选定安装目录,下载安装依赖
cd /usr/local/src

yum install gcc
yum install pcre-devel
yum install zlib zlib-devel
yum install openssl openssl-devel

安装这4个依赖的时候,中间会有一些询问,输入Y即可

  1. 查看openssl是否安装
openssl version

查看是否安装pcre,安装会显示版本, 没安装什么都不显示
rpm -qa pcre
  1. 下载nginx安装包
这儿下载或者使用上传都可以,笔者使用的上传文件
cd /usr/local
wget http://nginx.org/download/nginx-1.12.2.tar.gz

  1. 解压安装包
tar -xvf nginx-1.12.2.tar.gz 
  1. 切换目录,安装
cd nginx-1.12.2
./configure
make && make install
  1. 启动:
/usr/local/nginx/sbin
./nginx
  1. 其他的一些常用命令
重启服务: ./nginx -s reload
停止命令: ./nginx -s stop
查看进程命令: ps -ef | grep nginx
如果在想在其它目录下直接执行以上命令,可以这么写,如启动nginx: /usr/local/nginx/sbin/nginx
  1. 配置安全组以及启动防火墙(前文中都有详细介绍,不再赘述)

  2. 查看是否启动成功

浏览器输入公网ip,出现如下图既代表安装成功
阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第8张图片

配置nginx域名转发(去掉端口号)

  1. 编辑nginx配置文件
进入nginx的安装目录
cd conf
vim nginx.conf

对照此图进行配置,左边是原始文件,右边是配置后的
阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第9张图片

配置nignx ssl证书(https协议)

进入nginx的安装目录
cd conf
mkdir cert
--> 创建了目录后,将ssl证书放这里

阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第10张图片

vim nginx.conf

在末尾处添加(笔者是参考阿里云的文档,各位也可以参考阿里云的文档nginx进行配置)
阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第11张图片

server {
		listen 443 ssl;   #SSL协议访问端口号为443。此处如未添加ssl,可能会造成Nginx无法启动。
		server_name www.s1.xxxx.cn;  #将localhost修改为您证书绑定的域名,例如:www.example.com。
		root html;
		index index.html index.htm;
		ssl_certificate /usr/local/nginx-1.16.1/conf/cert/3627013_s1.xxxx.cn.pem;   #将domain name.pem替换成您证书的文件名。
		ssl_certificate_key /usr/local/nginx-1.16.1/conf/cert/3627013_s1.xxxx.cn.key;   #将domain name.key替换成您证书的密钥文件名。
		ssl_session_timeout 5m;
		ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;  #使用此加密套件。
		ssl_protocols TLSv1 TLSv1.1 TLSv1.2;   #使用该协议进行配置。
		ssl_prefer_server_ciphers on;   
		location / {
			proxy_pass http://127.0.0.1:8080/;   #转发到tomcat
			proxy_set_header Host       $http_host;
			proxy_set_header X-Real-IP $remote_addr;  
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
			proxy_set_header X-Forwarded-Proto $scheme;
		}
	}   

安装svn服务并上传项目

  1. 通过yum命令安装svnserve
yum -y install subversion

若需查看svn安装位置,可以用以下命令:
rpm -ql subversion
  1. 创建版本库目录(此仅为目录,为后面创建版本库提供存放位置)
cd /var
mkdir svn
cd svn
mkdir svnrepos
  1. 创建svn版本库
svnadmin create /var/svn/svnrepos/xxxx   (xxxx为你预期的版本库名称,可自定义)

创建成功后,进入xxx目录下
cd /var/svn/svnrepos/xxxx

在这里插入图片描述

  1. 配置修改
cd /var/svn/svnrepos/xxxx/conf
vi authz
在最后位置添加
[/]
root = rw

只需在末尾添加,无需在文件其他部分修改和添加任何东西,rw表示赋予此账号可读写的权限
vi passwd

账号密码文件无需做修改,也是直接将账号和密码信息追加到文件中即可,注意格式为:

账号 = 密码

例如:admin = 123456
vi svnserve.conf
原始文件内容,都被注释掉的,我们只需要去掉4条指定内容前注释即可

阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第12张图片

  1. 开启防火墙和安全组(具体方法看前文)

  2. 启动svn服务器

svnserve -d -r /var/svn/svnrepos
  1. 客户端访问svn服务器

在windows客户端,输入地址:svn://ip地址:3690/xxxx (iP地址为你linux的ip,xxxx为前文创建的版本库名称,3690为svn默认端口)

弹出输入用户名和密码,输入即可访问

  1. 创建目录

在上一步的步骤下,右键地址,create folder即可创建项目目录
阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第13张图片

  1. 上传项目

请安装svn客户端,这里不再赘述了

阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第14张图片
阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第15张图片
点击ok,等待上传即可

  1. 下载项目

阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分_第16张图片

你可能感兴趣的:(阿里云linux一键部署web环境。linux安装svn,mysql5.7.26,jdk1.8,tomcat9.0.30,redis5.0.0,nginx1.16.1,tomcat日志按天切分)