Toggle navigation


Java on Tomcat镜像手册

Version 1.8.0

Websoft9提供的JAVA运行环境,帮助您在Linux下快速的安装部署JAVA应用程序,省去繁琐的配置工作,事半功倍。

Java镜像中包括:Tomcat 应用服务器,MySQL数据库,JAVA编程语言等核心组件以及其他相关辅助组件。通过组合、优化和兼容性处理,将所有组件打包成一个高性能、高集成性的Java运行环境解决方案包,保证能够兼容运行绝大部分Java应用程序。


本文档适用于通过主流云市场购买和部署了Websoft9镜像的用户,文档内容重点指导用户进行安装配置、系统基本操作和常见运维问题处理。

文档适用性说明:

  • 适用的主流云平台包括:阿里云、腾讯云、百度云、华为云、Azure、青云
  • 适用的操作系统包括:Linux,Windows
  • 适用的阅读者包括:初学者、学生、站长、运维人员、产品经理、开发者、UI

Linux和Windows下镜像组成略有差异,下面依次说明

Linux版

本镜像采用Nginx实现了静态与动态网页分离,并做了反向代理,无需通过8080端访问应用程序。具体参数如下

Java Application Software(Java1.8.0)
Java应用程序根目录:/data/tomcat/webapps

Application Server(Tomcat8.5.24,Nginx1.12)
Tomcat安装目录:/data/tomcat
Nginx配置文件目录:/etc/nginx/conf.d/default.conf
Nginx反向代理配置文件:/etc/nginx/conf.d/default.conf

Database(MySQL5.6.38)
MySQL 数据库:/data/mysql

Windows版

具体参数如下

Java Application Software(Java1.8.0)
Java应用程序根目录:/data/tomcat/webapps

Application Server(Tomcat8.5.24,Nginx1.12)
Tomcat安装目录:C:\websoft9\Tomcat 8.5
JDK安装目录:C:\Program Files\Java\jdk
JRE安装目录:C:\Program Files\Java\jre

Database(MySQL5.6.37)
MySQL 数据库目录:C:\websoft9\mysql-5.6.37
默认安装了JDBC

服务器配置要求

最低配置建议为1核2G内存1M带宽,内存低于1G运行不了

  1. 镜像需要与服务器配套使用,获取Websoft9的镜像有两种方式:
    方式一:若没有可用的云服务器,登录主流云厂商的云市场,找到由Websoft9提供的“Java环境”相关免费镜像,点击“购买”(同时会配套购买云服务器,若只打算试用请选择“按量”方式购买,实现按小时使用,接近免费)
    方式二:若有可用的云服务器,登录到云厂商的控制面板,找到可用的云服务器,通过关机->更换系统盘(重装镜像),在更换过程中选取云市场镜像,获取本镜像
  2. 待镜像购买或更换完成后,镜像会自动安装到云服务器上,待实例处于“运行中”后,访问网址:http://服务器公网IP/,正常会出现Tomcat前台界面
  3. 如果浏览器访问以上网址没有任何反应,请检查您的安全组设置,确保80端口是开放的。

应用程序安装、使用和维护中需要用到三种账户:

1、Tomcat账号和密码:默认账号是tomcat/tomcat

2、MySQL账号和密码:root/123456
Windows下可以通过MySQL-Front客户端口工具镜像进行数据库可视化管理


2、服务器操作系统账号和密码

Linux服务器账号和密码说明:

  • 账号:root
  • 密码:是安装镜像的时候客户自行设置的,若不记得此密码,请登录云服务器后台,修改服务器密码,重启后生效
  • 登录:下载一个putty工具,通过root账号登录,参考(服务器通用文档-Linux远程管理与FTP

Windows服务器账号和密码说明:

  • 账号:administrator
  • 密码:是安装镜像的时候客户自行设置的,若不记得此密码,请登录云服务器后台,修改服务器密码,重启后生效
  • 登录:使用Windows系统自带的远程桌面工具,参考(服务器通用文档-Windows远程管理与FTP

远程连接之前,请确认您服务器使用的操作系统,Linux操作系统(CentOS、Ubuntu、Debian、SUSE Linux、OpenSUSE、AliyunLinux)与Windows操作系统的登录方式是完全不一样的。

Linux系统(CentOS,Ubuntu,AliyunLinux)

管理Linux系统,只需要用到两个工具即可满足大部分使用场景

  • WinSCP,可视化界面的SFTP工具,90%的Linux操作均可通过它来实现(下载WinSCP
  • Putty,远程登录&命令操作软件,需要用到命令操作的时候使用(下载Putty

具体参考:

Windows系统

Windows服务器的操作主要分为两个部分:

  • 远程桌面连接:通过PC自带的远程桌面工具远程连接到服务器,完全控制服务器的操作
  • FTP文件管理:通过FTP客户端和Windows服务器上的FTP服务端进行通讯,实现文件管理的操作的目的

具体参考:

Linux环境中部署网站主要分为5个步骤:

上传网站代码->修改文件系统用户权限->配置域名(非必要)->增加网站对应的数据库(非必要)->完成安装向导

Java环境中只部署一个网站还是多个网站、有无域名这两种情况对应的部署操作细节略有不一样,下面分别说明:

场景一:服务器只安装一个网站

  1. 通过SFTP工具,将网站源文件上传到默认的根目录下:/data/tomcat/webapps
  2. 通过Putty工具修改用户权限,运行如下一条命令即可:
    ~# chown -R tomcat.tomcat /data/tomcat/webapps/
  3. 如果没有可用域名,请直接通过http://公网ip  的方式来访问应用
  4. 如果有可用的域名,通过域名控制台将域名解析到服务器公网IP,确保解析成功,后通过http://域名 的方式来访问应用
  5. 如果在安装向导过程中提示数据库无法自动创建,自行创建数据库

场景二:服务器部署多个网站(无域名)

无域名情况下,以部署两个网站为例,具体操作如下:

  1. 通过SFTP将第一个网站目录上传到/data/tomcat/webapps目录下面,假设应用程序目录命为“mysite1”
  2. 通过Putty工具修改用户权限,运行如下一条命令即可:
    ~# chown -R tomcat.tomcat /data/tomcat/webapps/mysite1
  3. 通过http://ip/mysite1 的方式来访问应用,进入安装向导
  4. 如果在安装向导过程中提示数据库无法自动创建,需要自行创建数据库

安装第二个网站mysite2,操作步骤同样

场景三:服务器部署多个网站(共用一个域名)

以部署两个网站为例,具体操作如下:

  1. 通过SFTP将第一个网站目录上传到/data/tomcat/webapps 目录下面,假设应用程序目录命为“mysite1”
  2. 通过Putty工具修改用户权限,运行如下一条命令即可:
    ~# chown -R apache.apache /data/tomcat/webapps/mysite1
  3. 通过域名控制台将域名解析到服务器公网IP,确保解析成功进入下一步
  4. 通过http://域名 /mysite1 的方式来访问应用,进入安装向导
  5. 如果在安装向导过程中提示数据库无法自动创建,需要自行创建数据库

安装第二个网站mysite2,操作步骤同样

场景四:服务器部署多个网站(多个域名)

以部署两个网站为例,具体操作如下:

  1. 通过SFTP将第一个网站目录上传到/data/tomcat/webapps/目录下面,假设应用程序目录命为“mysite1”
  2. 通过Putty工具修改用户权限,运行如下一条命令即可:
    ~# chown -R apache.apache /data/tomcat/webapps/mysite1
  3. 通过域名控制台将域名解析到服务器公网IP,确保解析成功进入下一步
  4. 通过SFTP进入 /etc/nginx/conf.d目录,新增一个conf文件,假设名称为mysite1.conf,将下面内容拷贝到这个配置文件中,并将域名和目录修改成自己的实际名称
    server {
            listen 80 default_server;
            server_name www.mydomain.com; 
    
            location / {
             proxy_pass http://127.0.0.1:8080/mysite1;
             proxy_set_header Host $host;
             proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            }
    
    }
  5. 重启http服务或重启服务器
    ~# systemctl restart nginx
  6. 通过http://域名 的方式来访问应用,进入安装向导
  7. 如果在安装向导过程中提示数据库无法自动创建,需要自行创建数据库

安装第二个网站mysite2,操作步骤同样

Windows环境中部署网站主要分为5个步骤:

上传网站代码->配置域名(非必要)->增加网站对应的数据库(非必要)->完成安装向导

Java环境中只部署一个网站还是多个网站、有无域名这两种情况对应的部署操作细节略有不一样,下面分别说明:

计算系统一定会出问题,只是问题大小,出问题的时间和概率不同而已,因此备份无比重要,即一定要养成备份的习惯,切莫存在侥幸心理。一个镜像上存在操作系统、运行环境、数据库和应用程序四个组成部分。每个部分都有可能被损坏,因此备份首先要保证有一个全局的备份,然后再考虑局部的备份。

  • 全局的备份。即一个备份方式能够将操作系统、运行环境、数据库和应用程序四个组成部分全部备份下来,这个备份方式是唯一的,即云厂商提供的快照功能。快照功能可以定义备份时间和备份保存时间,可以一键恢复,几乎没有弱点,唯一的不好的地方就是它需要收取费用
  • 操作系统的备份。操作系统是云的组成部分,操作系统的备份即快照备份
  • 运行环境的备份。运行环境与操作系统是融为一体的,即运行环境的的备份即快照备份
  • 数据库备份。使用数据库的导入或导出功能就可以备份数据了。需要注意三点:备份的数据是否可以恢复?自动备份还是手动备份?多久备份一次?
  • 应用程序备份。应用程序的备份相对以上是最简单的,将应用程序的文件夹备份到服务器之外的存储地是最安全有效的。需要注意两点:自动备份还是手动备份?多久备份一次?

总结:快照备份是必须的,其他的备份手段结合起来使用

不同的云厂商快照设置稍有差别,具体参考:

Linux和Window的镜像更新是有较大差异的,具体如下

Linux版更新

本镜像采用Linux自带的包进行安装的,因此升级更新(包括Java、Nginx、Tomcat、Linux更新)非常简单:

以Putty工具登录后,运行下面

~# yum update -y //升级所有包同时也升级软件和系统内核,-y当安装过程提示选择全部为"yes"
~# yum upgrade -y //只升级所有包,不升级软件和系统内核,-y当安装过程提示选择全部为"yes"

 

域名设置分为两个步骤

步骤一、域名解析

如果您的域名备案(大陆之外无需备案),可以通过云厂商的域名控制台进行域名解析,操作如下:

  1. 登录域名控制台->域名解析,进入解析设置界面(以阿里云为例)
  2. 增加一条A记录,主机记录那里填写二级域名的前缀(如www,shop,test等)或通配符@,记录值填写您的服务器公网ip地址,保存
  3. 域名解析成功,等待解析生效(不同的厂商解析生效时间不一样,1分钟-24小时不等)

注意:解析生效之后,本地访问可能由于缓存问题导致仍然没有生效,请清空浏览器缓存,然后通过CMD命令行刷新本地DNS操作

步骤二、修改conf配置文件

修改配置文件/etc/nginx/conf.d/default中与域名相关的值

server {
        listen 80 default_server;
        server_name _;  //将此处_改成你的域名,例如www.websoft9.com

        location / {
         proxy_pass http://127.0.0.1:8080;  //如果期望域名直接访问网站,请在8080后增加"斜杠+网站目录",例如 http://127.0.0.1:8080/mysite1
         proxy_set_header Host $host;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        }

}

 

上传一个扩展或模板文件夹,建议修改Linux系统的权限以便能够正常访问。网站的权限设置值建议如下:
file 644, folder 755 ,用户和用户组分别是 tomcat: tomcat

方法一:putty登录命令行方式(推荐)

~# chown -R tomcat.tomcat /data/tomcat/webapps
~# find /data/tomcat/webapps/ -type d -exec chmod 755 {} \;
~# find /data/tomcat/webapps/ -type f -exec chmod 644 {} \;

方法二:WinSCP右键修改,参考:使用WinSCP设置文件夹权限

CentOS下TomCat不能使用80端口的问题

1024以下的端口只能由root用户使用,普通权限的tomcat服使用80端口启动时会报没有权限。

java.net.BindException: Permission denied <null>:80

解决方法:

方法一:更改启动用户为root,不建议。

方法二(推荐,提供的镜像中使用的是该方法):做端口重定向,将发向80的请求改到8080端口处理。执行下面的命令

[root@iZ94bojtvkpZ ~]# iptables -t nat -A PREROUTING -p tcp -m tcp –dport 80 -j REDIRECT –to-ports 8080

[root@iZ94bojtvkpZ ~]# iptables -t nat -A PREROUTING -p udp -m udp –dport 80 -j REDIRECT –to-ports 8080

[root@iZ94bojtvkpZ ~]# service iptables save

Linux下主要通过命令进行服务管理,Windows下主要通过系统服务工具进行管理,具体如下:

Linux版

使用本镜像,可能需要用到的命令如下:

~# cd /data/tomcat/webapps  //进入网站根目录
~# reboot //重启服务器
~# wget url  //下载url对应的文件
~# unzip xx.zip //解压xx.zip文件到当前目录

~# systemctl restart nginx  //重启nginx
~# systemctl restart php-fpm //重启php-fpm
~# systemctl restart mysqld //重启mysql数据库

~# systemctl restart tomcat  //重启tomcat
~# systemctl start tomcat//启动tomcat
~# systemctl stop tomcat //关闭tomcat

~# systemctl restart mysql  //重启mysql
~# systemctl start mysql//启动mysql
~# systemctl stop mysql //关闭mysql

~# yum update -y //升级所有包同时也升级软件和系统内核,-y当安装过程提示选择全部为"yes"
~# yum upgrade -y //只升级所有包,不升级软件和系统内核,-y当安装过程提示选择全部为"yes"

Windows版

服务随操作系统自动启动,如果手工修改配置参数后,需要重新启停服务,有两种方法。

方法一:在“开始”-> “管理工具”->“服务”中重启、tomcatstackTomcat、tomcatstackMysql服务。

方法二:在C:\websoft9\tomcatstack-8.0.36-0中找到“manager-windows”。

双击打开“manager-windows”,可以进行服务启停、参数配置。

Remine历史版本镜像指V2.0.0版本版本,历史版本使用是基于Oneinstack制作,因此使用上有很大的不同

具体参考文档: Java&Tocamt简易手册

本文档由长沙网久软件有限公司原创,为了保证文档的严肃性和可用性,任何人不得盗用或修改后二次分发。需要转载请标注来源,否则我们保留给予法律追究的权利。

我们会定期更新文档,请访问在线文档以获取最新版本

本文档在线地址:http://docs.websoft9.com/xdocs/java-tomcat-image-guide/
合作或技术支持:http://www.websoft9.com