方案选择
自动化部署 (Terraform):单击一键运行,进入Terraform Explorer查看并执行Terraform代码,Terraform 将自动创建并配置好包含一台 ECS 实例、公网 IP 和相应安全组规则的完整环境。
手动部署:如已购买ECS实例,希望控制部署过程、了解部署细节,请按照以下步骤操作。
准备工作
开通公网:为实例分配固定公网IP地址或绑定弹性公网IP(EIP)。
Linux:入方向放行 TCP 协议的22(SSH)、8080(Tomcat)端口。
Windows:入方向放行 TCP 协议的3389(RDP)、8080(Tomcat)端口。
手动部署OpenJDK:为服务器安装Java运行环境(JVM)和开发工具包。
操作步骤
Linux
步骤一:下载并安装Tomcat
登录ECS实例。
访问ECS控制台-实例。在页面左侧顶部,选择目标资源所在的资源组和地域。
进入目标实例详情页,单击远程连接,选择通过Workbench远程连接。根据页面提示登录,进入终端页面。
下载并解压Tomcat安装包。
以Tomcat v9.0.91为例,如需安装其他版本,可访问Tomcat官网获取下载地址,替换命令中的URL。
# 下载Tomcat安装包 sudo wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.91/bin/apache-tomcat-9.0.91.tar.gz --no-check-certificate # 解压到/usr/local目录 sudo tar -zxvf apache-tomcat-9.0.91.tar.gz -C /usr/local/创建软链接。
升级版本时,只需修改此软链接的指向即可,无需更改服务配置文件。
sudo ln -s /usr/local/apache-tomcat-9.0.91 /usr/local/tomcat
步骤二:将Tomcat配置为系统服务
将Tomcat配置为systemd服务,实现开机自启动。
获取 JDK 路径。
sudo readlink -f $(which java)JDK 8:返回路径中
jre目录的上一级为JDK的正确路径。JDK 11+:返回路径即为JDK的正确路径。
创建
tomcat.service服务文件。JDK_PATH需替换为上一步获取的JDK路径。sudo tee /etc/systemd/system/tomcat.service > /dev/null <<'EOF' [Unit] Description=Apache Tomcat Web Application Container After=network.target [Service] Type=forking Environment="JAVA_HOME=JDK_PATH" Environment="CATALINA_PID=/usr/local/tomcat/temp/tomcat.pid" Environment="CATALINA_HOME=/usr/local/tomcat" Environment="CATALINA_BASE=/usr/local/tomcat" ExecStart=/usr/local/tomcat/bin/startup.sh ExecStop=/usr/local/tomcat/bin/shutdown.sh Restart=on-failure [Install] WantedBy=multi-user.target EOF启动并设置Tomcat服务开机自启。
# 重新加载 systemd 配置,使新服务文件生效 sudo systemctl daemon-reload # 启动 Tomcat 服务 sudo systemctl start tomcat # 设置 Tomcat 服务开机自启动 sudo systemctl enable tomcat
步骤三:验证部署结果
检查服务状态。
sudo systemctl status tomcat若返回
active(running),说明Tomcat启动成功。访问验证。
在本地浏览器地址栏中输入
http://<ECS实例公网IP>:8080。如果成功显示Tomcat欢迎页面,则说明Java Web环境已部署成功。
Windows
以64 位 Windows Server 2022 部署Tomcat 9.0.113为例。
步骤一:安装与配置Tomcat
登录ECS实例。
访问ECS控制台-实例。在页面左侧顶部,选择目标资源所在的资源组和地域。
进入目标实例详情页,单击远程连接,选择通过Workbench远程连接。选择连接方式为终端连接,输入账号和密码,登录图形化终端页面。
下载Tomcat 9.0.113并解压。
建议将压缩包解压到不含中文字符的路径,例如
C:\Java\apache-tomcat-9.0.97,以避免潜在的路径识别问题。如需其他版本,请访问Tomcat官网,选择相应的版本,下载并解压安装包。

配置环境变量。
右键单击此电脑,选择。
在系统变量区域,单击新建,创建
CATALINA_HOME系统变量,变量值为Tomcat解压路径,完成后单击确定。
在系统变量中找到
Path变量,选中并单击编辑。
在编辑环境变量中单击新建,添加
%CATALINA_HOME%\bin,单击确定,保存配置。
步骤二:将Tomcat安装为Windows服务并启动
将Tomcat安装为Windows服务,而不是使用startup.bat临时运行,可以让Tomcat在后台稳定运行并实现开机自启。
安装服务。
以管理员身份打开命令提示符,切换到Tomcat的
bin目录,执行安装命令。service.bat install Tomcat9若返回信息提示
The service 'Tomcat9' has been installed.,表示安装成功。Tomcat9是自定义的服务名称,后续管理服务时将使用此名称。启动服务并设置为自动启动。
右键单击
,然后单击运行,输入services.msc并回车,打开服务管理器。找到
Apache Tomcat 9.0 Tomcat9服务,右键单击该服务,选择属性,将启动类型设置为自动,然后单击启动。
若日志中出现中文乱码,请参考Tomcat的日志信息显示中文乱码。
步骤三:验证部署结果
在本地浏览器地址栏中输入http://<ECS实例公网IP>:8080。如果显示Tomcat欢迎页面,说明Java Web环境已部署成功。

后续步骤
上传 Web 项目
使用Workbench上传或下载文件,将一个Web应用程序(.war文件)上传到Tomcat的网站根目录(默认为webapps),Tomcat会自动检测并部署WAR文件。
部署后,可通过http://<公网IP>:8080/<项目名>访问应用。
配置Tomcat
修改配置文件
进入Tomcat安装目录下的
conf文件夹,打开server.xml文件。修改Tomcat的相关配置。
Tomcat默认使用
8080端口,如需修改端口号,可以修改port的属性值。修改端口后,需在实例的安全组中添加安全组规则放行修改后的端口。

Tomcat默认的网站根目录为
webapps,如需修改Tomcat的网站根目录,可以修改appBase的属性值。
设置Tomcat的JVM内存参数
Linux
创建
setenv.sh文件,通过setenv.sh文件集中管理JVM参数。请根据ECS实例规格和应用负载调整JVM初始堆和最大堆内存。
sudo tee /usr/local/tomcat/bin/setenv.sh > /dev/null <<'EOF' #!/bin/bash # 示例:适用于2GB内存的ECS,分配512MB JAVA_OPTS="-server -Xms512m -Xmx512m" export JAVA_OPTS EOF为该文件添加可执行权限并设置所有权。
sudo chmod +x /usr/local/tomcat/bin/setenv.sh重启Tomcat,使配置生效。
Windows
进入Tomcat安装目录下的
bin文件夹,打开catalina.bat文件。添加或修改JVM参数。
在文件靠前的位置(通常在
setlocal之后,call "%CATALINA_HOME%\bin\setenv.bat"之前)添加或修改JAVA_OPTS。请根据ECS实例规格和应用负载调整JVM初始堆和最大堆内存。# 示例:适用于2GB内存的ECS,分配512MB set "JAVA_OPTS=%JAVA_OPTS% -Xms512m -Xmx512m"如果已有
JAVA_OPTS,直接在后面追加参数(注意不同参数之间需留有空格)。重启Tomcat,使配置生效。
应用于生产环境建议
在生产环境中,为了减少安全风险,建议在部署成功后执行以下操作。
删除默认应用
为了减少潜在的攻击面,建议删除
webapps目录下的所有默认示例应用(docs,examples,manager,host-manager)。Linux:
sudo rm -rf /usr/local/tomcat/webapps/*Windows: 通过文件资源管理器手动删除
CATALINA_HOME\webapps目录下的所有子目录。
配置 HTTPS
生产环境应使用HTTPS,需在Tomcat服务器安装SSL证书(Linux),使用Nginx 、负载均衡(SLB)作为反向代理来处理HTTPS请求。
常见问题
浏览器访问超时或显示“无法访问此网站”
检查安全组:检查ECS实例的安全组入方向规则是否已放行
8080端口。检查操作系统防火墙:检查操作系统内部的防火墙(如
firewalld或Windows Defender Firewall)是否关闭或已放行8080端口。检查端口监听:确认8080端口正被Tomcat监听。
Linux:
ss -lntp | grep 8080Windows:
netstat -ano | findstr ":8080"
Tomcat启动失败
查看日志:Tomcat的主要日志位于其安装目录下的
logs文件夹中。查看catalina.out(Linux)或catalina.<date>.log(Windows)和localhost.<date>.log文件,若日志中出现Address already in use错误,表示端口已被其他程序占用。详情请参见能ping通ECS实例但端口不通的排查方法。JDK路径错误:检查Java的环境变量
JAVA_HOME配置是否正确。
Tomcat的日志信息显示中文乱码
该问题通常是由于Windows命令提示符(CMD)的默认编码(GBK)与Tomcat日志输出的编码(通常是UTF-8)不一致导致的。
打开Tomcat安装目录下的
conf文件夹,找到并编辑logging.properties文件。将文件中所有默认的编码
UTF-8修改为GBK。保存文件并重新启动Tomcat,验证日志中的中文是否乱码。