乐趣区

关于云服务:阿里云部署java环境附自动化部署脚本

java 环境(CentOS 7.2,jdk-8,tomcat-7.0.78,nginx-1.12.0)

1. 装置 JDK

  • 首先查看零碎是否曾经装置了 jdk

    rpm -qa | grep java
    
  • 有则执行上面命令卸载

    rpm -e --nodeps  这里为下面命令查问进去的 jdk
    
    
  • ` 去官网下载 jdk:http://www.oracle.com/technet…     下载对应版本的 rpm 包,本操作系统为 64 位

    把下载链接复制下来,在 linux 中进行下载。

    或者间接复制链接地址

    此处去除了用户验证

    `

    `

    wget –no-check-certificate –no-cookies –header “Cookie: oraclelicense=accept-securebackup-cookie” http://download.oracle.com/ot…

    装置:rpm -ivh 这里为下载下来的包的名字退出环境变量 vi ~/.bash_profile 文件开端追加 export JAVA_HOME= 这里为 java 装置目录(默认在 /usr/java) export JRE_HOME=$JAVA_HOME/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib export PATH=$JAVA_HOME/bin:$PATH

    执行上面命令,立刻失效 `

    source ~/.bash_profile

测试是否装置胜利执行 java -version,呈现如下信息阐明装置胜利

java version "1.7.0_131"Java(TM) SE Runtime Environment (build 1.8.0_131-b11)Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)

2. 装置 tomcat

  • 切换目录到 local, 并且创立目录 tomcat, 切换到 tomcat 目录下载 tomcat

    cd /usr/local/mkdir tomcatcd tomcatwget http://mirror.bit.edu.cn/apac…

解压装置:tar -zxvf apache-tomcat-7.0.82.tar.gz

切换到 tomcat 装置目录,测试启动

cd  / 装置目录 cd  binsh startup.sh

拜访 http:// 主机 ip:8080(留神:确保 8080 端口已关上,可在平安组配置中查看)

呈现 tomcat 欢送页面示意装置胜利 ==============================

3. 装置 mysql

  • 查看 MySQL 是否已装置

    yum list installed | grep mysql

  • 如果有,就先全副卸载,命令如下:

    yum -y remove 这里为下面命令查问进去的后果

留神:rpm -e –nodeps mysql-libs-5.1.73-3.el6\_5.x86\_64  这个 5.1 破玩意害惨了,如同是 centos 带的,妹的。删你个龟孙

  • 下载安装包

    wget http://dev.mysql.com/Download… wget http://dev.mysql.com/Download… http://dev.mysql.com/Downloads/MySQL-5.6/MySQL-client-5.6.21-1.rhel5.x86_64.rpm

  • 顺次输出上面命令装置

    rpm -ivh MySQL-server-5.6.21-1.rhel5.x86_64.rpmrpm -ivh MySQL-client-5.6.21-1.rhel5.x86_64.rpmrpm -ivh MySQL-devel-5.6.21-1.rhel5.x86_64.rpm

  • 批改配置文件门路到 etc 目录,并且初始化

cp /usr/share/mysql/my-default .cnf /etc/my .cnf 初始化 /usr/bin/mysql\_install\_db

查问默认明码

more /root/.mysql_secret

登录 mysql

mysql -uroot - p 这里为下面查问进去的明码

批改明码

set password = password('123456');

批改编码格局

vim  /etc/my.cnf

在 \[mysqld\]上面增加如下信息

character_set_server=utf8

到此 mysql 装置实现 ============================== 

而后咱们进行近程连贯的时候会报错:

Host is not allowed to connect to this MySQL server

起因是默认状况下 MySQL 不容许近程登录,所以近程登录失败了,解决办法如下:

  1. 在装有 MySQL 的机器上登录 MySQL mysql -u root - p 明码
  2. 执行use mysql;
  3. 执行 update user set host = '%' where user = 'root'; 这一句执行完可能会报错,不必管它。
  4. 执行FLUSH PRIVILEGES;

    通过下面 4 步,就能够解决这个问题了。
    注: 第四步是刷新 MySQL 的权限相干表,肯定不要忘了,我第一次的时候没有执行第四步,后果始终不胜利,最初才找到这个起因。

3:装置 nginx

(1)增加 Nginx 到 YUM 源

增加 CentOS 7 Nginx yum 资源库, 关上终端, 应用以下命令:

sudo rpm -Uvh http://nginx.org/packages/cen…

(2). 装置 Nginx

在你的 CentOS 7 服务器中应用 yum 命令从 Nginx 源服务器中获取来装置 Nginx:

sudo yum install -y nginx

Nginx 将实现装置在你的 CentOS 7 服务器中。

重启      /etc/init.d/nginx restart

/etc/init.d/nginx reload

/etc/init.d/nginx stop

查看是否装置胜利,nginx 默认 80 端口,确保 80 端口关上。浏览器中输出服务器 ip 呈现如下页面,示意装置胜利;

附件:

1. 工程部署脚本

#!/bin/bash# 创立工程脚本 #前置条件:# apache-tomcat-7.0.82.tar.gz 文件放在目录:/usr/local/tomcat#############################APP=""read -p"please input the app name:[gongzy]"APPecho" 创立应用程序 $APP..."cd /usr/local/tomcatsudo tar xf apache-tomcat-7.0.82.tar.gzsudo mv apache-tomcat-7.0.82 tomcat_$APPecho"tomcat_$APP 搭建实现..."echo" 增加 tomcat_$APP 服务..."cd /etc/init.d/echo"#!/bin/bash">> tomcat_$APPecho"# description: Tomcat Start Stop Restart">> tomcat_$APPecho"# processname: tomcat">> tomcat_$APPecho"# chkconfig: 234 20 80">> tomcat_$APPecho"JAVA_HOME=/usr/java/jdk1.8.0_151">> tomcat_$APPecho"export JAVA_HOME">> tomcat_$APP  echo"PATH=\$JAVA_HOME/bin:\$PATH">> tomcat_$APP  echo"export PATH">> tomcat_$APP  echo"CATALINA_HOME=/usr/local/tomcat/tomcat_$APP">> tomcat_$APPecho"case \$1 in ">> tomcat_$APP echo"start)">> tomcat_$APP  echo"sh \$CATALINA_HOME/bin/startup.sh">> tomcat_$APP  echo";; ">> tomcat_$APP  echo"stop)">> tomcat_$APP     echo"sh \$CATALINA_HOME/bin/shutdown.sh">> tomcat_$APP  echo";;">> tomcat_$APP   echo"restart)">> tomcat_$APP  echo"sh \$CATALINA_HOME/bin/shutdown.sh">> tomcat_$APP  echo"sh \$CATALINA_HOME/bin/startup.sh">> tomcat_$APP  echo";;">> tomcat_$APP   echo"esac">> tomcat_$APP     echo"exit 0">> tomcat_$APPchmod a+x tomcat_$APPsudo chkconfig --add tomcat_$APPecho" 增加 tomcat_$APP 服务胜利!."echo" 批改 tomcat_$APP catalina.sh ."sed -i -e's|PRGDIR=`dirname "\$PRG"`|PRGDIR=`dirname "\$PRG"` \n if [-z "\$CATALINA_PID"]; then \n  CATALINA_PID=\$PRGDIR/CATALINA_PID \n fi|'/usr/local/tomcat/tomcat_$APP/bin/catalina.shecho" 批改 tomcat_$APP shutdown.sh ."sed -i -e's|exec "$PRGDIR"/"$EXECUTABLE" stop "$@"|exec "$PRGDIR"/"$EXECUTABLE" stop -force "$@"|'/usr/local/tomcat/tomcat_$APP/bin/shutdown.sh echo" 环境搭建胜利!"exit 0############################## 后置条件:#1. tomcat 端口及配置文件,  /usr/local/tomcat_XXX/conf/server.xml#  在 Connector 中减少 maxThreads="1024"acceptCount="512"URIEncoding="UTF-8”,#  如果有 AJP 1.3 Connector 请正文掉 #2. nginx 配置

2. 程序公布脚本(此处间接上传 war 包部署的。也能够 搭建 svn 用 maven 打包部署。)

#!/bin/bash# 工程部署脚本 #前置条件:请先将 war 包上传到 /home/www/war/ 目录下 APP=""read -p"please input the app name:[gongzy]"APPecho" 正在敞开 tomcat_$APP..."service tomcat_$APP stopecho" 正在部署 $APP..."cd  /usr/local/tomcat/tomcat_$APP/webapps/ROOT/rm -rf *cp /home/www/war/$APP.war  /usr/local/tomcat/tomcat_$APP/webapps/ROOT/jar -xvf $APP.warrm -f $APP.war echo" 正在重启 tomcat_$APP..."service tomcat_$APP startecho" 部署胜利!"
退出移动版