红联Linux门户
Linux帮助

配置环境并部署Java web项目到云服务器Ubuntu14.04系统

发布时间:2017-06-16 11:42:47来源:linux网站作者:失去也勿念
首先,我们的目的是把自己的Java web项目上传到服务器上,然后能够用公网访问而不是只能在本地浏览… 
所以,首先我们需要有一台服务器,现在云计算资源这么多,当然选择去购买云服务器喽! 
阿里云腾讯云百度云……各种云……比较推荐也比较放心的也就这3家了,阿里云和腾讯云我都用过,差别不大…… 
如果此时你就急匆匆的去购买服务器,那你可能有点傻眼了,what?!服务器价格怎么这么贵! 
好吧,确实是这么贵的……但是不要急,我们是学生啊……阿里云腾讯云对学生都有专门的活动的…… 
阿里云云翼计划:https://promotion.aliyun.com/ntms/campus2017.html 
腾讯云校园扶持:https://www.qcloud.com/act/campus 
具体的自己看喽…… 
我用的是阿里云的主机来做这个教程…… 
当然阿里云购买学生优惠产品你会发现这个情况……会给你预装好环境(是不是感觉又可以偷懒了……)腾讯云是没有的,只有预装的系统
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
我选了半天也没找到不预装的选项,只好随便选了一个之后选择重装系统……(我不重装没法写这个教程啊) 
因为我对ubuntu系统比较熟悉,所以重装了ubuntu14.04 64位系统
Let’s begin. 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
申请好了服务器之后,进入服务器控制台界面,这里可以对服务器主机进行管理。 
等等,你是否已经做好使用没有图形界面的系统了? 
If yes,please continue.. 
点击远程连接 
记住远程连接的密码。输入密码,进去之后界面是这样 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
敲击回车键 
出现输入用户名的命令行 
阿里云给你的服务器装系统的时候已经给你设置好了root用户(腾讯云预设的用户是ubuntu),密码是你在购买的时候设置的那个密码,先输入root 回车,然后出现Password: 之后开始输入密码,注意输入密码的时候,密码是不会显示出来的,你一个一个字符的敲击保证输入无误,然后回车之后,出现下面这个界面就表示登录成功。 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
然后习惯性的输入sudo apt-get install openssh-server之后提示ssh已经是最新的版本了 
原来阿里云给服务器装的ubuntu里面已经装好ssh了…… 
安装ssh是为了远程登录……
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
既然已经有ssh了那就检查一下ssh有没有启动(输入命令用窗口右上方的复制命令输入) 
输入"sudo ps -e |grep ssh"-->回车-->有sshd,说明ssh服务已经启动 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
如果没有启动,输入"sudo service ssh start"-->回车-->ssh服务就会启动。 
接下来,本来需要修改ssh的配置文件,以便我们能够用软件远程连接服务器.. 
但是阿里云的ssh文件已经是配置好的了 
(如果是腾讯云的话,这里需要简单的配置下/etc/ssh/sshd_config文件: 
输入"sudo gedit /etc/ssh/sshd_config"-->回车-->把配置文件中的"PermitRootLogin without-password"加一个"#"号,把它注释掉-->再在下面增加一句"PermitRootLogin yes"-->保存,修改成功。如果提示gedit命令找不到的话,就sudo apt-get install gedit 先安装gedit 用其他编辑器 vim什么的道理是一样的 ) 接下来新建一个用户,以便我们用ssh软件远程登录(Linux不允许root用户远程登录) 
(腾讯云的话直接用ubuntu用户登录就好,如果在使用命令的时候提示权限不够的话,在命令前面加上sudo 就OK) 
sudo adduser ubuntu 
两次输入密码 
然后一路回车 
输入Y 
新建用户成功
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
Ok..顺利启动ssh...我们可以放弃这个阿里云自带的难用的远程登录窗口了.. 
•••• 
现在需要下载两类软件:ssh软件和ftp软件 
前者用来远程登录,控制你的服务器 
后者用来远程传输文件 
(看到这你是不是已经开始怀念可爱的windows了呢,没办法,服务器资源有限,图形化界面太烧资源了) 
Ssh软件我用的是SecureCRT 8.0,ftp软件用的是WinSCP 
SecureCRT 8.0需要下一个注册机注册一下,很简单
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
这是两个软件的界面 
••• 
用SecureCRT 8.0连接你的服务器: 
进入软件界面之后,File->quick connect 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
Hostname输入你阿里云服务器主机的公网ip,在控制台那里是能看的 
Username是输入你刚才新建的用户,点击Connect 
然后弹出 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
再输入你刚才设置的密码 
看到下面这个说明你就连接成功了……终于可以不用那个鬼网页控制台了 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
然后是WINSCP:
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
用户名要输入root,密码是你root用户的密码,登录 
(如果是腾讯云的话,是没有自带root用户的,需要你激活root用户之后再使用 
sudo passwd root ,然后su root,输入密码,切换用户即可) 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
右边能看到这个就表示你登录成功了,可以用这个传文件,或者直接对文件进行远程操作了。
 
有没有开始怀念windows的图形化界面了…… 
首先,需要在你自己的windows电脑上准备好jdk和tomcat的安装包,版本号尽量要和你开发时用的版本号一样(记得下载linux版本的) 打开winscp连接服务器 
进入/usr/lib目录下,新建一个目录命令为jvm,并点上所有权限 然后将你下载的jdk上传到这个目录 
因为JDK比较大,100+MB,而FTP的速度向来感人,所以这步慢慢等吧
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
用SCRT登录上去 
切换到root:su root 
切换到jdk目录:cd /usr/lib/jm 
(如果出现sudo: unable to resolve host的提示,就用winscp打开/etc/hosts文件,在localhost后面加入你的主机名) 
解压JDK:sudo tar zxvf jdk-8u60-linux-x64.tar.gz 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
出现很长一串表示解压成功 
重命名文件夹:sudo mv jdk1.8.0_60 Java 
输入vi ~/.bashrc 命令 在末尾添加一下的配置保存 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
出现这个页面,将光标移到最末尾,按i键,进入编辑模式 将下面这个拷贝进去(也就是最后面)
export JAVA_HOME=/usr/lib/jvm/java  
export JRE_HOME=${JAVA_HOME}/jre  
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  
export PATH=${JAVA_HOME}/bin:$PATH  
然后按下ESC键进入命令模式,再输入:wq 回车 保存并退出vi
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
输入reboot重启系统 
••• 
再次连接服务器 
切换到root:su root 
输入java –version 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
OK.JDK安装成功 
 
接下来安装tomcat 
还是用winscp把tomcat的安装包上传到服务器的/usr/local文件夹下 
切换到local文件夹下:cd /usr/local 
解压:sudo tar zxf apache-tomcat-7.0.64.tar.gz 
改个名字:sudo mv apache-tomcat-7.0.64 tomcat
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
进入/usr/local/tomcat:cd /usr/local/tomcat 
加环境变量:sudo vi /etc/profile 
光标移到最下方 
I键进入编辑模式 
最后加入: 
CATALINA_HOME=/usr/local/tomcat 
export CATALINA_HOME 
ESC再输入:wq保存并退出vi 
进入bin目录:cd bin 
修改catalina.sh: sudo vi catalina.sh 
找到 
# OS specific support. $var _must_ be set to either true or false. 
在这行下面再定义一次CATALINAHOME以及JAVAHOME: 
CATALINA_HOME=/usr/local/tomcat 
JAVA_HOME=/usr/lib/jvm/java 
保存退出 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
启动tomcat:sudo ./startup.shTomcat启动成功 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
然后来配置MySQL 
首先保证还是在root用户下的 
先更新源:sudo apt-get update 
然后apt-get install mysql-client-core-5.6 
再apt-get install mysql-client-5.6 
最后apt-get install mysql-server-5.6 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
设置好Mysql的密码 
netstat -tap | grep mysql 
sudo service mysql restart 
执行一下检查一下mysql是否安装成功 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
Mysql安装成功,但是还需要把你本地的mysql配置给同步上去 
•• 
mysql -u root –p 
输入你设置好的mysql密码,进入mysql命令行 
创建表:create database test; 
进入test数据库:use test; 
设置编码:set names utf8; 
然后用winscp把导出的.sql文件上传到/home/ubuntu/ 
导入数据表:source /home/ubuntu/user_file.sql 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
列出数据库里的所有数据表:show tables; 
查看一个表里的数据:select * from user_file;
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
Ctrl+c退出mysql命令行
 
到此环境算是配置完了,现在需要把自己的项目上传服务器上 
不过我们先检查一下自己的tomcat能不能访问 
在浏览器输入阿里云给的外网ip,访问 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
访问成功。 
••• 
关于tomcat这一步有不少需要注意的 
1.端口问题:ubuntu的防火墙是否允许80/8080和3306等端口(简单粗暴不安全的做法是关闭防火墙) 
2.安全组问题:是否在阿里云的控制台里的安全组策略里打开80/8080等端口了 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
Tomcat报错原因太多,如果发现不能访问,请到tomcat/log目录下查看日志 
比如说我曾经有这种错误:java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[39.108.100.228].StandardContext[]] 
找了许久的原因,结果一看日志,再一查相关资料,结果只需要修改tomcat/conf/catalina.properties 文件的122行 org.apache.catalina.startup.ContextConfig.jarsToSkip=*.jar 然后问题就解决了
和windows同理,可以把war包拷到webapps目录下或者直接把war包展开的文件夹拷贝到webapps目录下,然后再修改server.xml即可 用winscp把项目上传上去 
我用的IDE是IDEA14,所以简单粗暴的把out文件夹输出的工程文件夹拷贝到webapps目录下之后,再设置server.xml 
又是一个漫长的等待 
配置环境并部署Java web项目到云服务器Ubuntu14.04系统
访问成功。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/31528.html