个人用户如何手动在ECS实例上部署Java web项目?

本文涉及的产品
云服务器 ECS,每月免费额度280元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: 本篇文档介绍如何手动在ECS实例上部署Java web项目。适用于刚开始使用阿里云进行建站的个人用户。

本篇文档介绍如何手动在ECS实例上部署Java web项目。适用于刚开始使用阿里云进行建站的个人用户。

项目配置

本篇教程在示例步骤中使用了以下版本的软件。操作时,请您以实际软件版本为准。

  • 操作系统:CentOS 7.4

  • Tomcat 版本:Tomcat 8.5.34

  • JDK 版本:JDK 1.8.0_191

下载源代码

  1. 下载 Apache Tomcat

    说明 源代码版本会不断升级。您可以在https://mirrors.aliyun.com/apache/tomcat/tomcat-8/获取合适的安装包地址。

  2. 下载 JDK

    1. 下载JDK安装压缩包jdk-8u191-linux-x64 .tar.gz

      说明 直接用 wget命令在实例中下载JDK安装压缩包,在解压缩时会出错。您可以下载JDK安装压缩包,再上传到实例上。

    2. 登录 ECS管理控制台ECS 管理控制台。

    3. 在左边导航栏中,单击 实例,进入 ECS 实例列表页。

    4. 选择所购 ECS 实例所在的地域,找到已购的 ECS 实例,在 IP 地址 列获取该实例的公网 IP 地址。

    5. 在Winscp工具里用公网 IP 地址连接Linux实例,然后将下载好的JDK安装压缩包上传到Linux实例的根目录下。

安装前准备

  1. 使用管理终端连接ECS实例

  2. 参考添加安全组规则,放行所需端口入方向规则。

  3. 关闭防火墙。

    输入systemctl status firewalld命令查看当前防火墙的状态。


    154478319732172_zh-CN.png

    如果防火墙的状态参数是active,则防火墙为开启状态。如果防火墙的状态参数是inactive,则防火墙为关闭状态。如上图所示,此处防火墙为开启状态,需要运行如下命令关闭防火墙:

  • 如果您想临时关闭防火墙,输入命令systemctl stop firewalld

    说明 这只是暂时关闭防火墙,下次重启Linux后,防火墙还会开启。

  • 如果您想永久关闭防火墙,输入命令systemctl disable firewalld

    说明 您可参考firewalld官网信息来决定何时开启防火墙。

关闭SELinux。

  • 如果您想临时关闭SELinux,输入命令setenforce 0

    说明 这只是暂时关闭SELinux,下次重启Linux后,SELinux依旧会开启。

  • 如果您想永久关闭SELinux,输入命令vi /etc/selinux/config编辑SELinux配置文件。回车后,把光标移动到SELINUX=enforcing这一行,按下i键进入编辑模式,修改为SELINUX=disabled,按Esc键,然后输入:wq并回车以保存并关闭SELinux配置文件。

    说明 您可参考redhat关于SELinux的官方文档来决定何时开启SELinux。

  1. 运行getenforce命令查看当前SELinux的状态。如果显示Disabled,则SELinux为关闭状态。如果显示Enforcing,则SELinux为开启状态,运行如下命令关闭SELinux:

  2. 重启系统使设置生效。

创建一般用户 www来运行Tomcat:

useradd www

创建网站根目录:

mkdir -p /data/wwwroot/default

将需要部署的Java Web项目文件WAR包上传到网站根目录下,然后将网站根目录下文件权限改为 www。本示例将直接在网站根目录下新建一个 Tomcat 测试页面:

echo Tomcat test > /data/wwwroot/default/index.jsp
chown -R www.www /data/wwwroot

安装 JDK

按以下步骤安装 JDK。

  1. 新建一个目录:

    mkdir /usr/java
  2. 解压 jdk-8u191-linux-x64.tar.gz 到/usr/java

    chmod +x jdk-8u191-linux-x64.tar.gz
    tar xzf jdk-8u191-linux-x64.tar.gz -C /usr/java
  3. 设置环境变量:

    1. 打开/etc/profile:vi /etc/profile

    2. 按下i 键进入编辑模式。

    3. 在/etc/profile 文件中添加以下信息:

      # set java environmentexport JAVA_HOME=/usr/java/jdk1.8.0_191export CLASSPATH=$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/libexport PATH=$JAVA_HOME/bin:$PATH
    4. 按下Esc键退出编辑模式,输入:wq保存并关闭文件。

  4. 加载环境变量: source /etc/profile

  5. 运行java -version命令,显示JDK版本信息时,表示 JDK 已经安装成功。
    154478319730641_zh-CN.png

安装 Apache Tomcat

  1. 依次运行以下命令解压apache-tomcat-8.5.34.tar.gz,重命名Tomcat目录,并设置用户权限。

    tar xzf apache-tomcat-8.5.34.tar.gz
    mv apache-tomcat-8.5.34 /usr/local/tomcat/
    chown -R www.www /usr/local/tomcat/

    在 /usr/local/tomcat/目录中:

  • bin:存放 Tomcat 的一些脚本文件,包含启动和关闭 Tomcat 服务脚本。

  • conf:存放 Tomcat 服务器的各种全局配置文件,其中最重要的是 server.xml 和 web.xml

  • webapps:Tomcat 的主要 Web 发布目录,默认情况下把 Web 应用文件放于此目录。

  • logs:存放 Tomcat 执行时的日志文件。

配置server.xml文件:

  1. 运行命令vi server.xml

  2. 按下i键进入编辑模式。

  3. 添加以下内容:

  1. 切换到/usr/local/tomcat/conf/ 目录:cd /usr/local/tomcat/conf/

  2. 重命名server.xml 文件:mv server.xml server.xml_bk

  3. 创建一个新的server.xml 文件:

    <?xml version="1.0" encoding="UTF-8"?><Server port="8006" shutdown="SHUTDOWN"><Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/><Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/><Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/><Listener className="org.apache.catalina.core.AprLifecycleListener"/><GlobalNamingResources><Resource name="UserDatabase" auth="Container"
    type="org.apache.catalina.UserDatabase"
    description="User database that can be updated and saved"
    factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
    pathname="conf/tomcat-users.xml"/></GlobalNamingResources><Service name="Catalina"><Connector port="8080"
    protocol="HTTP/1.1"
    connectionTimeout="20000"
    redirectPort="8443"
    maxThreads="1000"
    minSpareThreads="20"
    acceptCount="1000"
    maxHttpHeaderSize="65536"
    debug="0"
    disableUploadTimeout="true"
    useBodyEncodingForURI="true"
    enableLookups="false"
    URIEncoding="UTF-8"/><Engine name="Catalina" defaultHost="localhost"><Realm className="org.apache.catalina.realm.LockOutRealm"><Realm className="org.apache.catalina.realm.UserDatabaseRealm"
     resourceName="UserDatabase"/></Realm><Host name="localhost" appBase="/data/wwwroot/default" unpackWARs="true" autoDeploy="true"><Context path="" docBase="/data/wwwroot/default" debug="0" reloadable="false" crossContext="true"/><Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"prefix="localhost_access_log." suffix=".txt" pattern="%h %l %u %t &quot;%r&quot; %s %b" /></Host></Engine></Service></Server>
  4. Esc 键退出编辑模式,输入:wq保存并退出编辑。

设置 JVM 内存参数:

  1. 运行命令vi /usr/local/tomcat/bin/setenv.sh, 创建/usr/local/tomcat/bin/setenv.sh。

  2. 按下i键进入编辑模式。

  3. 添加以下内容:

    JAVA_OPTS='-Djava.security.egd=file:/dev/./urandom -server -Xms256m -Xmx496m -Dfile.encoding=UTF-8'
  4. 按下Esc 键退出编辑模式,输入:wq保存并退出文件。

设置Tomcat 自启动脚本。

  1. 下载脚本:wget https://github.com/lj2007331/oneinstack/raw/master/init.d/Tomcat-init

  2. 重命名Tomcat-init:mv Tomcat-init /etc/init.d/tomcat

  3. 添加执行权限:chmod +x /etc/init.d/tomcat

  4. 运行以下命令,设置启动脚本JAVA_HOME。

    sed -i 's@^export JAVA_HOME=.*@export JAVA_HOME=/usr/java/jdk1.8.0_191@' /etc/init.d/tomcat

设置自启动。

chkconfig --add tomcat
chkconfig tomcat on

启动Tomcat。

service tomcat start

在浏览器地址栏中输入http://公网IP:8080进行访问。出现下图所示页面时表示安装成功。
154478319712137_zh-CN.png

使用Web服务为ECS Linux实例配置网站及绑定域名。

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情:&nbsp;https://www.aliyun.com/product/ecs
相关文章
|
1天前
|
弹性计算 Ubuntu Linux
【幻兽帕鲁/Palworld】2024年新手在阿里云服务器上部署幻兽帕鲁/Palworld联机服务器攻略
【幻兽帕鲁/Palworld】2024年新手在阿里云服务器上部署幻兽帕鲁/Palworld联机服务器攻略。本文将详细介绍如何在阿里云服务器上部署幻兽帕鲁联机服务器,新手小白也能轻松搭建并管理自己的游戏环境。
|
1天前
|
弹性计算 Ubuntu Linux
【幻兽帕鲁/Palworld搭建教程】10秒钟快速在阿里云上部署幻兽帕鲁/Palworld服务器教程
【幻兽帕鲁/Palworld搭建教程】10秒钟快速在阿里云上部署幻兽帕鲁/Palworld服务器教程。如何快速在阿里云上部署幻兽帕鲁Palworld服务器?部署幻兽帕鲁服务器(Dedicated Server)您可以选择阿里云服务器作为游戏服务器,并参考下面的教程,仅需3~5分钟即可一键部署幻兽帕鲁专属服务器。
|
1天前
|
运维 监控 安全
幻兽帕鲁服务器搭建保姆级教程,阿里云服务器部署指南。
本文更新阿里云服务器部署幻兽帕鲁保姆级教程,傻瓜式指南,上篇文章写了腾讯云服务器搭建幻兽帕鲁的教程,对《幻兽帕鲁》这类可能对内存有较高要求的游戏,阿里云这里同腾讯云一样推荐至少16GB以上的内存配置,并搭配高性能CPU以及充足的带宽资源,确保游戏运行流畅不卡顿。
|
1天前
|
弹性计算 Ubuntu Linux
2024年幻兽帕鲁/Palworld联机服务快速部署教程:阿里云服务器1分钟部署幻兽帕鲁联机服务
2024年幻兽帕鲁/Palworld联机服务快速部署教程:阿里云服务器1分钟部署幻兽帕鲁联机服务。《幻兽帕鲁》非常火爆,如果你想要建立一个幻兽帕鲁的联机服务器,阿里云ECS云服务器是一个不错的选择。本文将为你详细介绍如何利用阿里云ECS云服务器搭建幻兽帕鲁的联机服务器。
|
1天前
|
弹性计算 Ubuntu Linux
2024年阿里云服务器快速部署幻兽帕鲁/Palworld鲁游戏新手教程,稳定不卡顿
2024年阿里云服务器快速部署幻兽帕鲁/Palworld鲁游戏新手教程,稳定不卡顿。阿里云服务器搭建帕鲁服务器游戏,服务器稳定无卡顿,先下载SteamCMD,并运行;然后下载Palserver,修改服务ini配置,启动PalServer,进入游戏服务器。今天分享阿里云创建幻兽帕鲁服务器教程。
|
1天前
|
弹性计算 数据安全/隐私保护
2024年雾锁王国(Enshrouded)服务器怎么部署 阿里云上雾锁王国服务器部署方法
2024年雾锁王国(Enshrouded)服务器怎么部署 阿里云上雾锁王国服务器部署方法。雾锁王国(Enshrouded)作为一款热门多人在线游戏,为了给玩家提供稳定、流畅的联机体验,阿里云提供了高效便捷的快速部署解决方案,本文将为大家分享阿里云一键部署雾锁王国联机服务器详细教程。
|
1天前
|
弹性计算 数据安全/隐私保护
【图文教程】阿里云部署雾锁王国/Enshrouded联机服务器详细步骤
雾锁王国(Enshrouded)作为一款热门多人在线游戏,为了给玩家提供稳定、流畅的联机体验,阿里云提供了高效便捷的快速部署解决方案,本文将为大家分享阿里云一键部署雾锁王国联机服务器详细教程。
|
1天前
|
弹性计算 数据安全/隐私保护
2024年阿里云一键部署雾锁王国/Enshrouded联机服务器详细教程
雾锁王国(Enshrouded)作为一款热门多人在线游戏,为了给玩家提供稳定、流畅的联机体验,阿里云提供了高效便捷的快速部署解决方案,本文将为大家分享阿里云一键部署雾锁王国联机服务器详细教程。
|
1天前
|
弹性计算 数据安全/隐私保护
不用任何技术,雾锁王国(Enshrouded)服务器零基础一键部署教程
不用任何技术,《雾锁王国》服务器零基础一键部署教程,今天教大家如何快速一键开服雾锁王国。该游戏目前最多支持16人游玩。雾锁王国(Enshrouded)作为一款热门多人在线游戏,为了给玩家提供稳定、流畅的联机体验,阿里云提供了高效便捷的快速部署解决方案,本文将为大家分享阿里云一键部署雾锁王国联机服务器详细教程。
|
1天前
|
存储 弹性计算 数据可视化
ECS:实例概述
ECS实例是云上的虚拟计算服务器,包含vCPU、内存、操作系统、网络、磁盘等基础组件
9 0

热门文章

最新文章

相关产品

  • 云迁移中心