最近写了一个web小程序,特别特别小的那种😂,想试一下从公网访问的效果。于是从阿里云申请了一个月的免费云服务器,正好了解一下服务器的知识。

1. 服务器是什么?

服务器是计算机的一种,它比普通计算机运行更快、负载更高、价格更贵。服务器在网络中为其它客户机(如PC机、智能手机、ATM等终端甚至是火车系统等大型设备)提供计算或者应用服务。服务器具有高速的CPU运算能力、长时间的可靠运行、强大的I/O外部数据吞吐能力以及更好的扩展性。根据服务器所提供的服务,一般来说服务器都具备承担响应服务请求、承担服务、保障服务的能力。服务器作为电子设备,其内部的结构十分的复杂,但与普通的计算机内部结构相差不大,如:cpu、硬盘、内存,系统、系统总线等。————来自百度百科

通俗地来说,服务器就是比个人计算机更稳定、更可靠地计算机✅

2. 阿里云服务器

由于是个人学习,所以直接在阿里云申请的个人使用的免费云服务器。

我申请的是Debian 9.9系统的服务器。申请好之后在控制台中的实例中点击远程连接即可通过SSH连接到服务器。

不知道密码可以在设置中重新设密码。

3. 安装Java、Tomcat

emmm,开始为了方便,直接使用apt包管理工具安装默认的java和tomcat,结果和我开发使用的版本不同,部署项目出了大问题😣,还是老老实实地安装和开发环境相同地版本吧。

3.1 安装Java

新建usr/download文件夹。

1
mkdir /usr/download

切换到download文件夹下。

1
cd /usr/download

使用wget来下载java压缩包

1
wget https://download.java.net/openjdk/jdk13/ri/openjdk-13+33_linux-x64_bin.tar.gz

新建/usr/lib/jvm文件夹(文件夹存在则跳过)

1
mkdir /usr/lib/jvm

将下载的文件解压到这个目录。

1
tar -xzvf openjdk-13+33_linux-x64_bin.tar.gz -C /usr/lib/jvm

切换到jdk-13文件夹下,看到以下文件,说明已经成功一半了🤗

设置环境变量。在网上搜到的很多教程是把下面的代码卸载/etc/profile文件中,再使用source /etc/profile更新,不知道为啥我这样操作不行。反而直接在命令行直接执行就可以了。

1
2
3
4
export JAVA_HOME=/usr/lib/jvm/jdk-13
export JRE_HOME=/${JAVA_HOME}
export CLASSPATH=.:${JAVA_HOME}/libss:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

然后输入java -version检查java版本。

说明安装成功🤪

3.2 安装Tomcat

在download文件夹中执行

1
wget "https://mirror.bit.edu.cn/apache/tomcat/tomcat-9/v9.0.34/bin/apache-tomcat-9.0.34.tar.gz"

新建目录/usr/lib/tomcat9

1
mkdir /usr/lib/tomcat9

将文件解压在这个目录下

1
tar -xzvf apache-tomcat-9.0.34.tar.gz -C /usr/lib/tomcat9

就大功告成了(我没有设置环境变量,启动的时候切换到安装目录下的bin目录下启动startup.sh就可以了😀)

4. 启动Tomcat

在/usr/lib/tomcat9的目录下,运行bin/startup.sh,即启动tomcat,当时遇到这样一个错误:

1
2
3
Using CLASSPATH:       /usr/lib/tomcat9/bin/bootstrap.jar:/usr/lib/tomcat9/bin/tomcat-juli.jar
touch: 无法创建”/usr/lib/tomcat9/logs/catalina.out”: 没有那个文件或目录
./catalina.sh: 399: ./catalina.sh: cannot create /usr/lib/tomcat9/logs/catalina.out: Directory nonexistent

这里就很清楚了,tomcat的logs目录不对,经查tomcat的目录安装在/var/log/tomcat9,因此:

1
ln -s /var/log/tomcat9 logs

ln命令(link) 它的功能是为某一个文件在另外一个位置建立一个同步的链接。
当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间。菜鸟教程——ln命令

注意:这个错误是当时我使用apt安装tomcat时遇到的,自己手动安装可能不会遇到这个错误,在此记录一下。

启动后,输入服务器的公网ip加端口号,看到如下界面说明启动成功👀

4.1 处理服务器公网连接问题

tomcat默认是在8080端口工作,所以需要给服务器开放8080端口。

在实例安全组中选择配置规则。

先点击手动添加,下面的设置按照图中的来就可以了。

当然你也可以修改tomcat的工作端口,就不用添加8080的访问规则了。

5. 部署Web项目

可以选择ssh工具直接war包,将war包放在/usr/lib/tomcat9/apache-tomcat-9.0.34/webapps目录下,放进去的war包会自动解压缩。

启动tomcat,就可以在浏览器中输入公网IP:端口号/项目名称来访问项目了。

我这里参考了大佬的帖子,也会自己总结一下,可以看我这篇文章——IDEA一键部署至云服务器

6. 参考