阿里云服务器部署Java Web项目全过程
最近需要将一个Java Web项目部署到服务器上,方便多人共享访问。这也是我第一次接触服务器之类的东西,也花了一点时间,最终总算部署成功,写下一篇文章记录以便日后回顾。
购买服务器
第一步当然是需要购买一台服务器了,我选择的是阿里云的ECS,对于新用户有一定的优惠活动。服务器徐购好后可以在管理控制台下看到自己服务器的配置情况。我买的是centos7 1核2G的,详情如下:

本地主机连接服务器
购买了服务器之后,下一步当时是要远程操作服务器,所以需要和远程服务器建立连接。这里有两种方式:一种是使用阿里云控制中心自带的管理终端进行远程连接,另一种是使用熟知的ssh协议。
使用管理终端连接
登陆ECS控制台,单击左侧导航栏里的实例,右边有一个远程连接选项

注意第一次登陆时会分配一个密码,将其记住,下次需要用这个密码登陆,登陆后的界面如下所示:

使用ssh连接
windows下需要下载putty工具,需要用puttygen生成密钥对,具体可参见:
https://help.aliyun.com/document_detail/51798.html?spm=5176.doc25425.2.11.Fe06aK

搭建Java Web开发环境
接下来需要在远程centos服务器上搭建Java Web开发环境,这里可以选择镜像部署和手工部署,阿里云上提供了很多相关环境的镜像,我这里使用手动部署的方式自己安装软件。部署Java Web需要分别安装配置jdk、tomcat、mysql,我创建了一个用户,并给该用户授权sudo。在该用户的目录下分布创建java、tomcat和mysql目录用于存放相应的软件和文件。
JDK配置
可以在官网上或使用命令wget下载相应版本的jdk安装包,由于我的本地项目使用的是jdk8,所以这里也下载对应的版本:
wget http://mirrors.linuxeye.com/jdk/jdk-8u144-linux-x64.tar.gz
将其解压到安装目录,我这里是/home/vcc/java
tar xzf jdk-8u144-linux-x64.tar.gz -C /home/vcc/java
设置环境变量:
编辑/etc/profile文件:
sudo vi /etc/profile
进入编辑模式后在最后添加如下信息:
#set java environment
export JAVA_HOME=/home/vcc/java/jdk1.8.0_144
export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH
保存后退出,加载环境变量:
source /etc/profile
查看jdk版本:

tomcat安装配置
tomcat的安装和jdk类似,需要注意要想在外部使用服务器的ip地址访问,需要在阿里云安全组规则中允许8080端口通过,详情如下:

注意在前面ssh连接中也需要设置安全组规则,配置好,在本机输入ip地址:8080即可访问tomcat页面,表明配置成功,具体可参见阿里云官方文档:
https://help.aliyun.com/document_detail/51376.html?spm=5176.doc52806.6.757.bJq7gM
mysql安装配置
本来想安装mysql5.7的,结果安装过程中总是出现问题,就该换mysql5.6了,安装教程网上应该有很多,这里就不多说了。安装好后运行命令:
service mysqld start
启动mysql后,运行命令:
mysql -u root -p
使用root用户登陆mysql。
部署Java Web项目
我需要将本地的Java Web工程打包成war,以及将数据库导出至sql文件一并上传到服务器上。这里可以使用pscp工具进行本地主机和服务器之间文件的上传和下载,需要下载pscp并和putty放在同一目录下,cmd进入到putty目录,使用命令:
pscp E:\data.sql root@ip地址:/home/vcc/mysql
将项目的war包放到tomcat的webapps目录下,tomcat运行后会自动将其解压,然后就可以使用路径来访问了。
对于数据库的导入,需要在mysql命令下先创建同名的数据库,然后使用source data.sql运行即可。这里要注意需要将MySQL客户端和服务器端的编码都设置为utf8,否则在部署访问的时候会出现问题。这里可以通过修改/etc/my.cnf文件:

在本机上成功访问项目:

阿里云服务器部署Java Web项目全过程的更多相关文章
- 记录第一次阿里云服务器部署java web工程的经历
起因:测试一个微信小程序,发现所有的请求要求为https的形式,开发工具忽略后手机无法测试,故尝试配置. 准备:阿里云服务器一台 域名一个(解析在服务器) tomcat7.0.54 j ...
- 阿里云服务器购买 发布web项目全过程
http://blog.csdn.net/liona_koukou/article/details/50496946
- 阿里云Ubuntu部署java web - 文件夹
文件夹(点击章节标题阅读): 阿里云Ubuntu部署java web(1) - 系统配置 ssh链接server(使用终端远程链接) 加入用户 给用户赋予运 ...
- Spring框架学习笔记(6)——阿里云服务器部署Spring Boot项目(jar包)
最近接外包,需要部署服务器,便是参考了网上的几篇博文,成功在阿里云服务器成功部署了Spring Boot项目,特记下本篇笔记 Spring Boot项目打包 这里说一下部署的一些问题 1.mysql驱 ...
- 阿里云Ubuntu部署java web(2) - 配置tomcat
系统版本号:Ubuntu12.04 64位 安装: 首先要安装java(測试时使用的版本号是6b27-1.12.6-1ubuntu0.12.04.2).版本号可自行选择,但不同版本号配置方法可能不同. ...
- 阿里云Ubuntu部署java web(1) - 系统配置
系统版本号:ubuntu 12.04 64位 ssh链接服务器(使用终端远程链接): ssh -l username IP地址 假设出现相似例如以下错误: @ WARNING: REMOTE H ...
- 阿里云部署Java web项目初体验(转)
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主要讲了如何在阿里云上安装JDK.Tomcat以及其配置过程.最后以一个实例来演示在 ...
- 阿里云部署Java web项目初体验(转)/linux 上配置jdk和安装tomcat
摘要:本文主要讲了如何在阿里云上安装JDK.Tomcat以及其配置过程.最后以一个实例来演示在阿里云上部署Java web项目. 一.准备工作 购买了阿里云的云解析,和云服务器ecs. 2.下载put ...
- 阿里云部署Java web项目
林炳文Evankaka原创作品.转载请注明出处http://blog.csdn.net/evankaka 摘要:本文主要讲了如何在阿里云上安装JDK.Tomcat以及其配置过程.最后以一个实例来演示在 ...
随机推荐
- Oracle数据库常用SQL函数
1.SQL函数的概念: 函数一般是在数据上执行的,它给数据的转换和处理提供了方便.只是将取出的数据进行处理,不会改变数据库中的值.(类似于java中的方法但函数只是将数据库中的数据取出(复制)到函数中 ...
- [20190130]删除tab$记录的恢复.txt
[20190130]删除tab$记录的恢复.txt --//网上提到许多删除tab$的案例,主要原因在于没有从官方正规渠道下载oracle版本,还有一些来自工具里面带有一些脚本删除tab$记录. -- ...
- SqlServer 递归查询
--查询部门及下属部门列表 WITH TEMP --递归 AS (SELECT Id, Code, Name, ParentId FROM [dbo].[AspSysDepartments] --查询 ...
- 【安富莱STM32H7教程】第1章 初学STM32H7的准备工作
完整教程下载地址:http://forum.armfly.com/forum.php?mod=viewthread&tid=86980 第1章 初学STM32H7的准备工作 俗话说万事开头 ...
- 跟我一起学opencv 第五课之图像的混合
*理论-线性混合操作 g(x) = (1-α)f0(x)+αf1(x) α的取值范围位0-1之间 f0(x)为图像1,f1(x)表示第二张图像 α是混合系数 g(x)是生成的图像,对每一个像素 ...
- CopyOnWriteArrayList源码解析
Java并发包提供了很多线程安全的集合,有了他们的存在,使得我们在多线程开发下,可以和单线程一样去编写代码,大大简化了多线程开发的难度,但是如果不知道其中的原理,可能会引发意想不到的问题,所以知道其中 ...
- 从壹开始前后端分离【 .NET Core2.0 +Vue2.0 】框架之四 || Swagger的使用 3.2
前言 如果想直接在域名的根目录直接加载 swagger 比如访问:localhost:8001 就能访问,可以这样设置: app.UseSwaggerUI(c => { c.SwaggerEnd ...
- GC参考手册 —— GC 调优(工具篇)
JVM 在程序执行的过程中, 提供了GC行为的原生数据.那么, 我们就可以利用这些原生数据来生成各种报告.原生数据(raw data) 包括: 各个内存池的当前使用情况, 各个内存池的总容量, 每次G ...
- Java设计模式系列-抽象工厂模式
原创文章,转载请标注出处:https://www.cnblogs.com/V1haoge/p/10755412.html 一.概述 抽象工厂模式是对工厂方法模式的再升级,但是二者面对的场景稍显差别. ...
- python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍
目录 python学习第七讲,python中的数据类型,列表,元祖,字典,之元祖使用与介绍 一丶元祖 1.元祖简介 2.元祖变量的定义 3.元祖变量的常用操作. 4.元祖的遍历 5.元祖的应用场景 p ...