ECS,搭建阿里云服务器
1.购买阿里云ECS服务器
免费试用:免费试用链接
购买链接有优惠:云服务器ECS_云主机_服务器托管_计算-阿里云
云服务器ECS_云主机_服务器托管_计算-阿里云
根据自己的必要选择相应的设置:
购买链接:云服务器ECS_云主机_服务器托管_计算-阿里云
目前有一个月的服务器免费体验时间,我选择了免费体验,点击后,可以看到你刚才购买的服务器:
也可以通过这里查看你的服务器:
到这里服务器已经购买成功,接下来是通过工具(xshell、Termius等)去连接你自己的服务器,方便安装JDK,Mysql,nginx等。
接下来是如何通过工具连接服务器:
远程登录你必要先设置密码:
设置成功后记住你输入的密码,在你服务器实例中点击远程连接:
点击后出现以下页面:
点击后出现下面页面,输入你的6位密码:
输入精确密码后,输入你的实例账号和密码显示如下代表成功:
要是不确定你的实例账号和密码可在这个地方查看:
点击重置密码后出现如下页面,可查看账号和密码:
至此整个阿里云服务器的申请就算完成了。
2.Xshell 的安装利用
简朴测试一下,你会发现网页登陆云服务器的方式有一个毛病,那就是只要一小段时间不操作,服务器就会进入休眠,又得输入连接密码才能激活,很烦。所以我们采用别的方式登录这个云服务器。
2.2 Xshell是一个终端模拟软件,换言之,我们只要在本地Windows系统下安装这个软件,打开输入账号密码,就能登录远程的云服务器
2.3 Xshell下载官网:https://xshell.en.softonic.com/(如果官网下载太慢,可以百度一下Xshell,很多资源,下载最新版的就行,我用的是Xshell 7 )
2.4 下载完了选择安装路径开始安装,这个软件很小,安装也简朴,安装过程中不会出现问题(新手的我也一起畅通)
2.5 打开Xshell们可以看到如下界面:
2.6 新建一个会话,拿出之前的条记,将公网IP输入到主机栏,端标语设置为22(服务器的监听端口,ftp默认为21,sftp为22,如果你设置22连不进去,那就换21试一下)
2.7 点击 ”确定”>>“连接”,继续拿出条记,把服务器账号填进“登录的用户名”,把服务器密码填进“密码”,如下图。
2.8 登录成功,进入服务器。以后我们就可以通过这个界面临云服务器进行远程操控,在上面进行jdk,mysql安装,springboot部署等操作了。
3、ECS服务器安装JDK步骤:
SpringBoot项目里自带了Tomacat,所以我们不必要再去服务器安装。所必要安装的是JDK(你想要部署项目的JDK版本)。
3.1 先用Xshell 连接到你的云服务器(或者直接在阿里云官网中远程连接也行)
3.2 在你的本地Windows系统中下载 Linux系统下的jdk,jdk下载官网:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html。下载你必要的jdk版本,我用的是 jdk-8u261-linux-x64.tar.gz
在官网上必要Oracle的账号,由于我没有Oracle账号,我在CSDN上找了一个jdk-8u261-linux-x64.tar.gz包。
得到tar包后,你必要在服务器上创建一个存放包的文件夹:
切换到对应目录:
我在对应的包下创建了java包,用来保存jdk:
如今我们必要把tar传到这个目录如图:
然后我们要把这个文件传到云服务器上去。听起来很高端,其实很简朴的。在Xshell上实验rz下令就可以实现。首先我们要在云服务器上安装这个下令。在Xshell中实验
我们要把上传的文件放到哪个目录,就要先cd进入谁人目录。我们申请的服务器的初始目录布局如下:(cd下令:进入目录)
比方:我如今我想把jdk保存到,/root/user/java这个目录下,这个目录也是刚才我们自己创建的,用cd下令切换到对应目录:
然后 rz 把安装包上传上去(rz下令:上传文件)
实验rz下令会弹出一个文件选择框,选择安装包上传:
上传中,等待上传完毕:
传输完毕,点击“关闭”
利用ls下令查看目录。可以看到,我们刚才上传的安装包已经存在于目录中了(ls下令:查看当前目录下的文件)
由于我的之前解压过一次,所有会有一个蓝色的包,不必在意:
接下来解压安装包就算安装成功了!利用tar下令解压压缩包,如果你下载的版本跟我不一样,记得把包名改成你自己的版本 。(tar下令:解压)
- tar -zxvf jdk-8u261-linux-x64.tar.gz
复制代码 解压完成后就会有如下蓝色的包:
跟你在windows系统下安装完jdk一样,你还要设置系统情况变量。linux系统中的设置方法为:找到文件 /etc/profile ,向其中添加如下代码:
先cd进目录 /etc ,再利用 vim下令编辑文件profile(vim下令:编写修改文件内容),该文件类似于windows系统下设置系统情况变量。
- [/code] [list=1]
- [*] cd /etc
- [*] vim profile
- [/list] [align=center][img=457,70]https://img-blog.csdnimg.cn/9eb3444f706f4d8cac5b46b5e2e76913.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Lmd5bCYMDAx,size_16,color_FFFFFF,t_70,g_se,x_16[/img][/align]
- [code]
复制代码
- export JAVA_HOME=/root/user/java/jdk1.8.0_261
- export CLASSPATH=$JAVA_HOME/lib/
- export PATH=$PATH
JAVA_HOME/bin
- export PATH JAVA_HOME CLASSPATH
进来以后是下面这个界面,按i 键入编辑,在文件末了添加如上内容。其中export JAVA_HOME=/root/user/java/jdk1.8.0_261为你解压得到蓝色包名的路径。
在文件的末了把上面的代码打进去,如果你的jdk版本跟我不一样,记得把 export JAVA_HOME=/root/user/java/jdk1.8.0_261 这一行改成你自己的版本。然后按ESC键退出编辑,输入 :wq + 回车键保存退出文件。
查看文件是否保存成功。
立即实验profile文件,使之生效,利用source下令(source下令:依次实验文件所有语句)
到这一步,jdk的安装就全部完成了。末了,我们再利用java下令验证一下,如果可以看到我们的版本信息就可以了。
输入下令后,得到一下效果,证明安装成功:
4.linux云服务器安装mysql
4.1 启动Xshell,连接阿里云服务器
4.2 检查系统有没有自带mysql;
4.3 一般情况是没有的,但如果有,就卸载
4.4安装mysql5.*版本,看自己需求安装
MySQL 5.7 Linux安装包
官网下载:https://dev.mysql.com/downloads/mysql/
选择你的镜像版本和目前最新是8.*版本,如果必要其他本部点击右侧如下图:
8.*版本:
以下是其他版本,选择你必要的版本:
将下载的压缩包上传到服务器中,我自己在root目录下user中创建一个mysql包用来保存下载的tar包。
切换到对应目录:
通过rz,把下载的tar包上传到服务器:
成功后,解压刚下返来的tar包,得到rpm包
- sudo tar -zvxf mysql-5mysql-5.7.33-1.el7.x86_64.rpm-bundle.tar
复制代码 查询并卸载系统自带的Mariadb
- [/code] [list=1]
- [*] rpm -qa | grep mariadb
- [*]
- [*] rpm -e --nodeps 显示出的文件名
- [/list] [size=2][b]查询并卸载系统老旧版本的Mysql[/b][/size]
- [code]
复制代码
- rpm -qa | grep mysql
- rpm -e --nodeps 显示出的文件名
如果这两个都没有则什么都不会显示,这就可以省一半的心了。
开始正式安装:1.找到你解压出来对应包实验Rpm包安装。注意看你的数据库版本。安装的顺序必须如下,由于有的包之间有依靠关系,顺序不一样会报错。
- [/code] [list=1]
- [*] rpm -ivh mysql-community-common-5.7.27-1.el7.x86_64.rpm
- [*]
- [*] rpm -ivh mysql-community-libs-5.7.27-1.el7.x86_64.rpm
- [*]
- [*] rpm -ivh mysql-community-devel-5.7.27-1.el7.x86_64.rpm
- [*]
- [*] rpm -ivh mysql-community-libs-compat-5.7.27-1.el7.x86_64.rpm
- [*]
- [*] rpm -ivh mysql-community-client-5.7.27-1.el7.x86_64.rpm
- [*]
- [*] rpm -ivh mysql-community-server-5.7.27-1.el7.x86_64.rpm
- [/list] 这几步都没错代表安装完成。
- 在安装时我遇到的错误,安装这个会报缺少依靠:
- [align=center][img=813,394]https://img-blog.csdnimg.cn/73bed21e539a4d9bbf9028b7ac0a29a3.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Lmd5bCYMDAx,size_20,color_FFFFFF,t_70,g_se,x_16[/img][/align]
- 只要添加如下依靠在安装:
- [code]
复制代码
- 解决办法:
- yum install compat-openssl10
1. 设置开机启动
2. 启动mysql服务
查看mysql服务是否启动
3. 重置root密码
MySQL5.7会在安装后为root用户生成一个随秘密码,而不是像以往版本的空密码。 可以安全模式修改root登录密码或者用随秘密码登录修改密码。下面用随秘密码方式
MySQL为root用户生成的随秘密码通过mysqld.log文件可以查找到:
- sudo grep 'temporary password' /var/log/mysqld.log
复制代码 4. 修改root用户密码
(MySQL的密码计谋比较复杂,要巨细写,过于简朴的密码会被拒绝
mysql -u root -p
mysql> Enter password: (输入刚才查询到的随秘密码)
mysql> SET PASSWORD = PASSWORD('自己设置密码'); /*注意后面一定要加上“;”否则可能无法实验*/
mysql> exit
5、开放远程连接
mysql>use mysql;
mysql>update user set user.Host='%' where user.User='root';
mysql>flush privileges;
6.下一步开放外部网段访问3306端口。
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '自己设置的密码' WITH GRANT OPTION;
mysql>FLUSH PRIVILEGES;
mysql>exit;
7.查看防火墙设置3306端口
查询防火墙状态:
- systemctl status firewalld.service
复制代码 8.开启防火墙mysql 3306端口的外部访问:
- [/code] [list=1]
- [*] firewall-cmd --zone=public --add-port=3306/tcp --permanent; /*注意后面都要带分号“;”*/
- [*] firewall-cmd --reload;
- [/list] 但你实验以上步骤时报如下错是由于没打开防火墙:
- [align=center][img=1122,55]https://img-blog.csdnimg.cn/0bd75f8190b144a5a7942f224bdc8db2.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Lmd5bCYMDAx,size_20,color_FFFFFF,t_70,g_se,x_16[/img][/align]
- 打开防火墙即可:
- 通过 systemctl start firewalld 开启防火墙,没有任何提示即开启成功。
- [code]systemctl start firewalld
复制代码 9.利用数据库软件验证是否正常工作
在连接之前你必要在服务器中给数据库的3306端口添加到安全组中,在实例列表中就可以看到我们购买的云服务器。点进去,我们必要对服务器的安全组进行设置;
安全组中除了自带的规则,我们还必要添加几个新的安全组(这些安全组的详细作用可以看其他博主的文章)
完成这些错误后,可以利用数据库连接工具远程连接数据库。
5.部署SpringBoot项目
5.1 linux云服务器上的情况我们都已经设置好了,但好像差了一个tomcat?由于springboot内置了tomcat,所以后面我们把它打包成jar包就可以免去tomcat的设置了(如果是打包成war包,那还是要设置tomcat的)。
这里我是用的是IDEA工具进行springboot项目的打包:
打开你的项目,在右侧找到maven点开,实验一下操作:
运行完成后,可以在你项目的target包中去找:
把这个jar包传到服务器上:
打开application.properties,设置项目运行端口:
把这个jar复制到桌面,打开Xshell,利用rz指令把它上传到linux云服务器的根目录:
这里我自己创建了一个文件夹用于存放jar包:
上传成功后,我们要想在linux系统上运行这个项目,就要保证他运行所用的端口没有被占用,否则运行就会报错。
查看端口利用情况:
- netstat -anp | grep 8099 //netstat -anp | grep <端口号>
复制代码
可以看到这个端口被占用了(没被占用的时候不显示任何东西),查看占用端口的PID
- sudo lsof -i:8099 //sudo lsof -i:<端口号>
复制代码
我们要把它kill掉,留出空位来运行我们的项目。kill后再次查看端口,可以看到这个端口已经腾出来了(查询为空)
- sudo kill -9 26191 //sudo kill -9 <PID>
复制代码
利用java指令运行项目jar包,这样我们的项目就算部署成功了
- java -jar ***.jar //***为你的jar包名
复制代码 你必要把你的项目的端口的外部访问:
做完之后你必要在服务器的安全组中添加你的项目端标语:
- [/code] [list=1]
- [*] firewall-cmd --zone=public --add-port=8099/tcp --permanent; /*注意后面都要带分号“;”*/
- [*] firewall-cmd --reload;
- [/list] 随便找个浏览器,搜刮栏输入http://公网ip:端标语 就可以搜刮到你的网站了。
-
- [b]接下来美满一下啊jar包运行:[/b]
- 这种启动方式是一次启动,当我们关掉Xshell的时候,我们的网站又访问不上了,又得重新打开Xshell,实验 java -jar ***.jar。所以我们要利用下面的方法让这个项目在服务器上主动不间断地跑.
- 关掉重启一下Xshell(这样的话原本的项目就停掉了),创建并编写文件 start.sh,向其中添加字段 : java -jar ***.jar 。按ESC + :wq + 回车键保存退出
- [code]touch start.sh
复制代码 创建完成后查看是否成功:

编辑start.sh文件:
按ESC + :wq + 回车键保存退出
给这个start.sh 管理员权限,然后用nohup指令不间断地运行(nohup指令:忽略所有挂断(SIGHUP)信号,不挂断地运行下令)
赋予管理员权限:
不间断运行文件内的指令
操作图片:
查看jar包是否运行:
如下可以看到时间和后面的jar包名说明成功:
要是浏览器上索栏输入http://公网ip:端标语 搜刮不到你的网站,记得实验以下操作以及添加安全组:
- [/code] [list=1]
- [*] firewall-cmd --zone=public --add-port=8099/tcp --permanent; /*注意后面都要带分号“;”*/
- [*] firewall-cmd --reload;
- [/list] 这样我们就能拿到你后台jar包的数据了:
- [align=center][img=638,669]https://img-blog.csdnimg.cn/422934e29fbb47a8afd89fd97cebb596.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5Lmd5bCYMDAx,size_20,color_FFFFFF,t_70,g_se,x_16[/img][/align]
- [size=2]如果必要把前端项目部署在服务器上必要安装一下nginx,关注我持续更新!!![/size]
- [size=4]6.安装nginx[/size]
- [size=3]1.安装nginx依靠[/size]
- [size=2]
- Nginx的安装通过源码包编译完成,必要c++支持库,同时在Nginx运行过程中对于一些压缩、路由正则表达式、https支持等相关特性必要其他一些支持库。一般情况下,安装 gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel 这些依靠可满足根本要求,安装指令如下:[/size]
- [code]yum install -y gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel
复制代码 安装完成如下图:
2 安装Nginx
2.1 下载源码包
- wget http://nginx.org/download/nginx-1.18.0.tar.gz
复制代码 如下图:
2. 2 解压源码包
- tar -zxvf nginx-1.18.0.tar.gz
复制代码 如图:
2.3 安装设置检查
解压完成后,进入到解压目录 实验安装检查,运行如下指令:
如图:
检查完成后,默认安装设置信息如下图所示。
2.4 安装
在解压目录下 实验下面指令,默认会安装到/usr/local/目录下
实验完上面下令后:
2.5 设置别名
此步骤可选,目的是为了后续运行nginx操作指令方便。别名设置方式和当前利用的shell类型相关,这里利用zsh,所以在用户目录的.zshrc文件中加入如下别名 nginx 替代nginx实验文件的完备路径。
- alias nginx='/usr/local/nginx/sbin/nginx'
复制代码
按Esc,输入:wq退出并保存,然后实验下面操作:
2.6 安装效果验证
安装完成后,会生成nginx默认设置文件 /usr/local/nginx/conf/nginx.conf。
可实验如下下令nginx设置检查,如果设置文件有错误会有相应提示。
如上图,nginx设置精确,下面指令启动nginx、查看nginx进程、并从本机测试可访问性(默认开启80端口,所以利用 localhost 访问即可),如下图:
- [/code] [list=1]
- [*] nginx
- [*] ps -ef|grep nginx
- [*] curl localhost
- [/list] 如图:
- [align=center][img]https://img-blog.csdnimg.cn/20200629094819444.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2x4aF93b3JsZHBlYWNl,size_16,color_FFFFFF,t_70[/img][/align]
- 上图中利用 curl 下令访问本机可正常返回页面信息,nginx安装完成。后续可进行其他域名相关的绑定设置。
- 如必要在浏览器上访问则必要暴露80端口:
- [code]
复制代码
- firewall-cmd --zone=public --add-port=80/tcp --permanent; /*注意后面都要带分号“;”*/
- firewall-cmd --reload;
如图:
3 阿里云ECS设置
如上面步骤nginx已成功安装,且在本机可访问。但是由于阿里云的安全机制,默认情况下无法利用公网IP进行访问,也就是无法在其他主机通过非域名方式访问。解决方式如下。
3.1 添加安全组
默认情况下,阿里云系统会给每个ESC主机关联一个默认的安全组(每个ECS实例也至少要关联一个安全组),该安全组默认开启了TCP协议中的22 和 3389端口,用于支持 ssh 和 mysql 操作,如下图。所以安装Nginx后,默认利用的 80 端口并未开放,所以无法访问。
3.3 测试公网IP访问
完成上面步骤后,在浏览器中,直接输入ECS的公网IP,可成功访问,如下图:
到此服务器部署JDK、mysql、Nginx、运行jar结束!!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |