1,首先购买服务器
- 其它非学生购买服务器登陆阿里云即可看到;特殊的,这里附上阿里云学生服务器购买链接,:
https://promotion.aliyun.com/ntms/act/campus2018.html?spm=5176.230344.1224685.2.1014443esaFB8b
- 学生认证链接:
https://account.console.aliyun.com/?spm=5176.20180516001.0.0.12246968MuIqID#/student/home
- 购买成功后,如果购买时没有设置密码或忘记密码,在ECS实例列表中选择对应的服务器实例,可以进行“重置实例密码”,重置后不要忘记进行服务重启 重置密码并重启后系统将可以通过新密码进行登录。
2,找到对应的公网IP,如图这里是 123.56.104.106
然后在自己电脑上通过linux命令来登陆这个服务器,如下,执行`ssh root@实例的(弹性)公网 IP` 命令,然后输入刚才重置的实例密码,如下由本地的localhost服务进入到ECS服务器中,表示登陆成功:
localhost:~ zhangweichang$ ssh root@123.56.104.106
root@123.56.104.106's password:
Last login: Thu Jun 27 12:32:18 2019 from 114.255.24.2
Welcome to Alibaba Cloud Elastic Compute Service !
-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory
[root@iz2zeeflm0o1guusulhmafz ~]#
3,登陆成功后,接下来就应该部署项目代码了(本人这里演示部署基于spring boot框架的maven工程,工程名dailyplanner-backend)
- 在ECS服务器上创建目录 /root/dailyplanner-backend
[root@iz2zeeflm0o1guusulhmafz ~]# mkdir /root/dailyplanner-backend
- 另外开启一个本地命令行窗口,进入项目主目录,执行如下命令生成项目的jar包:
localhost:dailyplanner-backend zhangweichang$ mvn clean install
此时会在项目目录下生成一个target文件夹,里面有一个由本地的项目生成项目jar包
- 将本地项目jar上传到ECS上创建的 /root/dailyplanner-backend 目录中
使用scp命令:`scp 本地的文件 root@公网IP:ECS上的目录`
localhost:target zhangweichang$ scp /Users/zhangweichang/Mine/dailyplanner-server/target/dailyplanner-backend-0.0.1-SNAPSHOT.jar root@123.56.104.106:/root/dailyplanner-backend
执行完毕,我们再进入登陆的ECS服务器,进入到/root/dailyplanner-backend目录,此时就会发现多了一个dailyplanner-backend-0.0.1-SNAPSHOT.jar 文件,这就是我们上传到该服务器的需要运行的项目jar
4,在ECS中执行如下命令运行项目,使用nohup &主要是保证项目在后台运行,就是当我们关闭服务器窗口时,项目依然可以处于运行状态(此处配置的端口为80)
nohup java -jar /root/dailyplanner-backend/dailyplanner-backend-0.0.1-SNAPSHOT.jar --server.port=80 > nohup.log 2>&1 &
5,配置ECS中可以访问的端口,比如配置允许访问80端口
如图:选中左侧的“安全组” -》“配置规则”-》弹出的新页面中选择“添加安全组规则”
添加安全组规则填写内容如下:
规则方向:入方向,表示其它网络访问该ECS服务器
授权策略:允许,表示该规则是允许访问配置的端口,而非拒绝访问
授权对象: 0.0.0.0/0 表示允许所有的网络访问该端口
然后点击“确定”,稍等片刻即可生效
6,对ECS中项目进行访问
如果在本地访问的url如下:
http://localhost:8080/api/event/list?eventType=0¤tDay=2019-06-23&eventStatus=0
则访问ECS中的项目时,需要将localhost换为公网IP即可(注意,需要服务器配置安全组允许外部访问8080端口)
http://123.56.104.106:80/api/event/list?eventType=0¤tDay=2019-06-23&eventStatus=0
或去掉80端口,(因为80端口为默认端口,所以访问80端口时,可以省去)
http://123.56.104.106/api/event/list?eventType=0¤tDay=2019-06-23&eventStatus=0