之前在工作时只有在那什么堡垒机上面搭建环境部署项目,只能用内网访问的,一直想着去接触一下真正的服务器,趁着还有几个月毕业,享受优惠,赶紧到阿里云那里买了个服务器和域名,自己尝试下真正的服务器部署等操作是咋样,见识下!
用到的工具:Xshell Xftp 说到服务器的部署肯定离不开这些工具(这个放个工具的链接 Xshell+Xftp)
解析
首先当然是先到阿里云官网买个服务器和域名(学生价很便宜,服务器就10块一个月)
登录阿里云控制台,在左上角输入 【域名管理】 定位到域名管理的控制台
选择需要绑定的域名点击【解析】
添加记录
主机记录:
www :
将域名解析为www.example.com,填写www;
@ :
将域名解析为example.com(不带www),填写@或者不填写;
mail :
将域名解析为mail.example.com,通常用于解析邮箱服务器;
* :
泛解析,所有子域名均被解析到统一地址(除单独设置的子域名解析);
二级域名 :
如:mail.example.com或abc.example.com,填写mail或abc;
手机网站 :
如:m.example.com,填写m。
记录类型:
要将域名指向主机服务商提供的IP地址,请选择「A记录」;要将域名指向主机服务商提供的另一个域名,请选择「CNAME记录」。
建立邮箱:
需要设置「MX记录」,根据邮箱服务商提供的MX记录填写。
记录值:
A记录值请填写您的服务器IP地址(必须为IPv4地址,例如:202.106.0.20),若不清楚IP,请您咨询您的空间服务商。
如果IP地址的格式中带有端口,如:202.106.0.20:8080,则只添加202.106.0.20即可。
TTL:
最常用的TTL值为10分钟,我们已为您默认选择,不用修改。
TTL指各地DNS缓存您域名记录信息的时间。
到这一步,添加了记录后,还需要实名验证,点进前往,填写实名信息
需要绑定域名所有者,填写基本信息,然后再上传身份证等信息,提交
解析申请完了,(但是因为实名验证需要等待通过验证)需要等待一天左右的审核通过
备案
可以直接在阿里云这里申请备案
点进去可以看到它提示的备案流程,备案挺麻烦的,审核要个20天
我为了学习,直接跳过备案了(也就是服务器ip并未成功绑定域名,如果是香港或者美国的主机服务器不需要备案),反正服务器ip没有绑定域名外网也能访问,又不是正式的产品网站,上面的步骤就当做是我走了个流程吧
刚买的阿里云服务器,登录到控制台,点击【实例】,可以看到你买的服务器,公网ip
修改密码
刚买的服务器,右上角有个消息红色数字提示,点进去,可以查看到你的初始密码
在控制台点击【更多】-【密码/秘钥】-【重置密码】 进入修改密码(就是远程连接该服务器的密码)
登录服务器
1)你可以选择用阿里提供的网页版连接工具,点击【登录】-【立即登录】
弹出窗口,填写密码,密码就是你刚才修改的新密码,没修改就是你的初始密码
确定进入服务器的控制台(用本地xshell等工具连接效果一样)
2)使用Xshell远程连接服务器(推荐,功能更加大)
打开你的xshell,点击左上角的+号新建会话,填写名称(随意),协议默认选SSH就行,主机填写你服务器的ip,然后点击连接
然后它会提示你输入用户名和密码,用户名就是root(一般刚买的都是,不排除你买的镜像服务器,然后被人设置了别的用户),密码就是你自己设置的或者阿里云初始化给你的那个
成功连接阿里云的服务器
安装mysql
1.新建mysql文件夹,添加mysql组,用户:
mkdir -p /usr/local/src/mysql
groupadd mysql
useradd -d /var/lib/mysql -s /sbin/nologin -g mysql mysql
2.上传mysql安装包到新创建mysql目录
1)使用xftp上传本地的jar安装包到服务器
先下载mysql5.6通用版64位到本地
打开xftp工具,点击新建一个连接 ,填写服务器ip(就是你买的服务器的ip)和用户名(一般就是root),密码就是你服务器修改或者初始的密码
点击ok等待一两秒,就连接进去了,选择本地的mysql包,和你要上传的位置,直接鼠标拖过去,OK
2)也可以用在线下载命令:(用的是服务器那边的网络,还挺快!)
wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz
3.解压压缩包
tar -zxvf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz
4.重命名文件夹,删除压缩包
mv mysql-5.6.33-linux-glibc2.5-x86_64 mysql5.6
rm -rf mysql-5.6.33-linux-glibc2.5-x86_64.tar.gz
5.将所属组改为mysql,执行脚本(根据你们实际的路径)
cd /usr/local/src/mysql
chown -R mysql:mysql mysql5.6/
cd /usr/local/src/mysql/mysql5.6/scripts/
./mysql_install_db --user=mysql --basedir=/usr/local/src/mysql/mysql5.6 --datadir=/usr/local/src/mysql/mysql5.6/data
要是遇到这个错误:
FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:
Data::Dumper
解决方法 :安装autoconf库
命令:yum -y install autoconf
6.复制文件到新的路径下及文件名
cd /usr/local/src/mysql/mysql5.6/support-files
cp my-default.cnf /etc/my.cnf
( cp: overwrite `/etc/my.cnf'?Y 同意重写该配置文件 )
cp mysql.server /etc/init.d/mysql
7.编辑软件运行环境
vim /etc/profile
写入下面两行内容:
export MYSQL_HOME=/usr/local/mysql
export PATH=$MYSQL_HOME/bin:$PATH
保存后执行
source /etc/profile
8.将MySQL添加为受chkconfig管理的服务,设置开机自动启动mysql
chkconfig --add mysql
chkconfig mysql on
9.启动mysql
service mysql start
若是报错:
# /etc/init.d/mysqld restart
/etc/init.d/mysqld: line 256: my_print_defaults: command not found
/etc/init.d/mysqld: line 256: my_print_defaults: command not found
MySQL server PID file could not be found! [FAILED]
/etc/init.d/mysqld: line 256: my_print_defaults: command not found
Starting MySQLCouldn't find MySQL server (./bin/mysqld_safe[FAILED]
原因:/etc/my.cnf 文件 缺少basedir 和 datadir 两个路径,加上即可(注意是你自己的实际安装路径,不要配错!)
解决方法:
vim /etc/my.cnf
[mysqld]
...........
...........
basedir=/usr/local/src/mysql/mysql5.6
datadir=/usr/local/src/mysql/mysql5.6/data
10.修改数据库root的密码
cd /usr/local/src/mysql/mysql5.6/bin/
mysqladmin -u root password '123'
11. 配置防火墙
vim /etc/sysconfig/iptables
写入下面内容:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
12.保存,重启
service iptables save
service iptables restart
13.开放阿里云服务器的3306端口(我这里测试用的直接全部端口都开放了,实际环境千万不要这么做!其实下面安装tomcat后还要开放8080端口,我全部开放是为了方便)
到阿里云控制台--实例--更多--安全组--配置安全组--点击新建--新建
这里查看设置开放端口的详情
1.创建一个目录
mkdir -p /usr/java/jdk7
cd /usr/java/jdk7
2.下载 jdk-7u80-linux-x64 .tar.gz 到本地
1)用xftp工具将包拉到阿里云服务器里面 /usr/java/jdk7 目录下
2)在线下载(这个下载的名字带上参数了 我去,自己下载后再改名字就行)
wget https://download.oracle.com/otn/java/jdk/7u80-b15/jdk-7u80-linux-x64.tar.gz?AuthParam=1555407404_281802a61b78db2b8be63b10d543cd10
3.解压
tar -zxvf jdk-7u80-linux-x64 .tar.gz
4.配置环境
vim /etc/profile
加入以下内容
JAVA_HOME=/usr/java/jdk7/jdk1.7
JRE_HOME=/usr/java/jdk7/jdk1.7/jre
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JRE_HOME/lib:$JAVA_HOME/lib/tools.jar
PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export JAVA_HOME JRE_HOME CLASSPATH PATH
不知道为什么,我一开始是直接每一行前面加export,但是一直不行,非得这样才行!
5.保存,测试
source /etc/profile
java -version
看到这个OK
1.创建目录
mkdir /usr/local/src/tomcat
cd /usr/local/src/tomcat
2.用xftp把本地的tomcat安装包拉到服务器上 /usr/local/src/tomcat 目录下
放个 apache-tomcat-7.0.92.tar.gz 地址
3.解压
tar -zxvf apache-tomcat-7.0.92.tar.gz
4.重命名目录和删除压缩包
mv apache-tomcat-7.0.92 tomcat7
rm -rf apache-tomcat-7.0.92.tar.gz
5.写入配置
cd /usr/local/src/tomcat/tomcat7/bin/
vim setclasspath.sh
在文件最后加上
export JAVA_HOME=/usr/java/jdk7/jdk1.7
export JRE_HOME=/usr/java/jdk7/jdk1.7/jre
6.启动tomcat
cd /usr/local/src/tomcat/tomcat7/bin/
./startup.sh
7.配置防火墙
vim /etc/sysconfig/iptables
写入:开通8080端口
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
8.重启防火墙
service iptables save
service iptables restart
9.测试是否成功
你买的那个阿里云的服务器是公网,你可以试下在你本地的cmd里面ping一下你的公网ip,是可以ping得通的
所以现在你可以直接在浏览器地址栏输入 Http://你的公网ip:8080
第一次访问可能要十秒左右(反正我是等了这么久,还以为失败了呢)
然后就可以看到我们熟悉的咪咪了
到这里我们服务器上面的最基本的项目运行环境已经安装好了,下面可以部署项目了
其实很简单,就是将你本地的数据库转个sql文件拉到服务器的mysql数据库执行下,然后把你项目打成包放到服务器的tomcat的webapp目录下,启动tomcat,就OK了。
当然sql文件跟你的项目都用xftp拉到你的阿里云服务器上
这一系列简单的操作我就不再说了,部署后,直接浏览器输入 你的公网ip:8080/你的项目名
这里的8080端口是你没有设置tomcat的访问端口(默认就是8080),而TCP/IP协议默认80端口,如果你访问时不写端口,就是访问的80端口,就是访问不到,这个要注意
下面是我自己做的一个小网站,放上去成功运行!