【Linux】记一次初始化阿里云服务器WEB环境并部署Web项目的笔记

17 篇文章 1 订阅
10 篇文章 0 订阅

title: 初始化阿里云服务器WEB环境
date: 2019-01-11 16:06:12
tags:

目录导航

@hucong

初始化阿里云服务器WEB环境

这是一篇针对我公司web环境的初始化教程,仅以MD的方式分享记录此教程,对有同样此需求的同学提供参考

实验环境

  • 阿里云ECS
  • 2核/4g/1m
  • CentOS 7.3

安装配置JDK环境

以安装在/usr/local/jdk1.8.0_144下的jdk文件为例:

1.配置环境变量

vim /etc/profile
export JAVA_HOME=/usr/local/jdk1.8.0_144 
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar

2.手动使环境变量生效

source /etc/profile

3.检查JDK配置是否生效

java -version

可以参考我写在CSDN上的一篇教程 CentOS 7.3安装JDK8.

切换yum库为163

如需备份请参考163官方文档 CentOS镜像使用帮助

wget  http://mirrors.163.com/.help/CentOS7-Base-163.repo

安装运行Nginx(域名)

centos 7以上是用Systemd进行系统初始化的,Systemd 是 Linux 系统中最新的初始化系统(init),它主要的设计目标是克服 sysvinit 固有的缺点,提高系统的启动速度

sudo yum install nginx
  • yum安装方式启动:

Systemd服务文件以.service结尾,比如现在要建立nginx为开机启动,如果用yum install命令安装的,yum命令会自动创建nginx.service文件,直接用命令

sudo systemctl start nginx.service
  • 编译安装方式启动

如果使用源码安装,需要手动创建nginx.service服务文件。开机没有登陆情况下就能运行的程序,存在系统服务(system)里,所以需要在系统服务目录里创建nginx.service文件vi /lib/systemd/system/nginx.service,并添加如下内容

[Unit]
Description=nginx
After=network.target
  
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
  
[Install]
WantedBy=multi-user.target

其余命令

#设置开机启动
systemcel enable nginx.service
#取消开机自启
systemctl disable nginx.service
#启动
systemctl start nginx.service
#查看当前状态
systemctl status nginx.service
#重新启动服务
systemctl restart nginx.service 
#查看所有已启动的服务
systemctl list-units --type=service

CentOS7+Nginx设置Systemctl restart nginx.service服务

安装卸载MySQL

卸载当前安装的MySQL

service mysqld stop
yum remove mysql mysql-* rpm -qa|grep mysql
yum remove mysql mysql-server mysql-libs compat-mysql51 yum list installed | grep mysql
yum remove mysql-libs

安装MySQL

官方文档和资源文件

rpm -Uvh https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm 
rpm -Uvh https://dev.mysql.com/get/mysql57-community-release-el6-11.noarch.rpm 
yum install mysql-community-server

MySQL的安装配置也可以参考:
Centos 7 mysql数据库安装配置教程+设置MySQL主从数据库备份

数据库初始化

1.启动数据库

service mysqld start  //service mysqld restart重启

2.由于是通过yum安装,所以查看默认密码进行登录操作

cat /var/log/mysqld.log | grep password  //查看默认密码
mysql -u root -p'iz-Xeh24k6a*’  //''内容以实际显示为准

3.设置安全策略组,方便设置简单密码

set global validate_password_policy=0;
set global validate_password_length=4;

4.修改初始密码

SET PASSWORD = PASSWORD('123456');

5.设置远程连接

#把在所有数据库的所有表的所有权限赋值给位于所有IP地址的root用户。(也可以指定某个数据库)
mysql> grant all privileges on *.* to root@'%'identified by 'password';
#如果是新用户而不是root,则要先新建用户
mysql>create user 'username'@'%' identified by 'password';  

6.重载授权表

FLUSH PRIVILEGES;

7.升级之后刷新

mysql_upgrade -u root -p

安装配置Tomcat

1.安装Tomcat

访问Tomcat,下载Binary版本进行解压(/usr/local)

  • Source Distribution -是源代码版,你需要自己编译成可执行软件。
  • Binary Distribution -是可执行版,直接可以拿来用的,他已经给你编译好的版本。

2.配置tomcat多项目单实例

修改Tomcat目录下的conf/server.xml文件的相应位置

  • 69~71行
<Connector port="8089" protocol="HTTP/1.1"
                connectionTimeout="20000"
                redirectPort="8443" URIEncoding="UTF-8" maxPostSize="-1" />

注:Connector port=“8089” 不能冲突,按实际修改

  • 148~150行
 <Host name="localhost"  appBase=""
            unpackWARs="true" autoDeploy="false">
<Context path="" docBase="/data/saas/saas.war"  reloadable="true" crossContext="true"/>

注:docBase=/data/saas/saas.war为当前环境下项目包.war所在地址

  • 160~162行
 <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
        prefix="localhost_access_log" suffix=".txt"
        pattern="%h %l %u %t &quot;%r&quot; %s %b" />

3.运行web服务

  • 运行saas平台
#sh /usr/local/apache-tomcat-saas/tomcat.sh start 
  • 检查运行情况(服务运行于8081端口)
#lsof -i:8081
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    1481 root   49u  IPv4  16199      0t0  TCP *:tproxy (LISTEN)

有进程说明启动成功

  • 检查日志
#cat /usr/local/apache-tomcat-saas/logs/catalina.20xx-xx-xx.log   //以实际为准

4.(可选)tomcat启动慢 有两种解决

1.在Tomcat环境中解决 可以通过配置JRE使⽤用非阻塞的Entropy Source。 在catalina.sh中加⼊入这么一行:

JAVA_OPTS="-Djava.security.egd=file:/dev/./urandom"

即可。加⼊入后再启动Tomcat,整个启动耗时迅速下降。
2.在JVM环境中解决 打开$JAVA_PATH/jre/lib/security/java.security这个⽂文件,找到下⾯面的内容:

securerandom.source=file:/dev/urandom

替换成

securerandom.source=file:/dev/./urandom

5.(可选)后台运行和文件迁移

⼀般,我们拷贝的⽂件都很⼤,想让scp在后台运⾏。通常我们要建⽴ssh 信任关系。即不输⼊密码就能拷贝,但是通常情况下这样的条件不能满
⾜。可以⽤下⾯的⽅法来实现后台运⾏scp:

scp remote_username@remote_ip:remote_file local_folder  

输⼊密码,回车。其他指令如下
不清楚可查看:Linux如何查看、关闭、后台运行任务

  • jobs //查看任务,返回任务编号n和进程号
  • bg %n //将编号为n的任务转后台运⾏行行
  • fg %n //将编号为n的任务转前台运⾏行行
  • ctrl+z //挂起当前任务
  • ctrl+c //结束当前任务
  • 将测试服务器192.168.1.1的/usr/local/frp文件夹复制到正式服务器192.168.1.2的指定位置/usr/local/app下

1.使用scp指令通过ssh协议传输

#scp -r /usr/local/frp root@192.168.1.2:/usr/local/app

提示是否保存密钥,并输入目标服务器的root密码(192.168.1.2),然后任务开始。
2.Ctrl+Z将任务暂停并挂起到后台:

[2]+  Stopped                 scp -r /usr/local/frp/ root@192.168.1.2:/usr/local/app

3.使用bg指令后台运行该任务

#bg 2

4.确认该任务状态

#jobs -l
[2]  24233 Running                 scp -r /usr/local/frp/ root@192.168.1.2:/usr/local/app &
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值