Eclipse+Maven+Nexus+Tomcat远程搭建CentOS web server
工具的使用,参考了很多前辈的资料,虽然不是转载但也算不上原创,仅供自己和大家参考罢了。
笔者的本意是要在云服务器上做个人网站,用于学习以及跟小伙伴愉快地玩耍。去看了很多建议和指导,虽然搭建成功,但是脑袋里晕乎乎的,所以在这里写这篇文章做一个总结,同时也希望帮助到有类似想法的朋友们。
一、 配置系统环境
Win10远程访问CentOS7,使用mavenweb项目,通过tomcat实现CentOS7系统下的web网站搭建。
整个过程中使用到的工具如下所示:
1)Win10
Win10是图形界面模式。
Xshell5:SSH远程工具,通过它访问CentOS,进行各种shell命令操作。
Xftp5:上传文件到CentOS,部署需要的工具。(如CentOS系统里yum指令找不到安装包 的时候)
JDK1.8:自己去官网下载合适的版本,我这里是64位的。安装之后,需要配置系统环境变量的路径,JAVA_HOME、PATH、CLASSPATH,网上有很多参考资料。
Eclipse:自己去官网下载合适的版本,我这里是neon3_64位的。
ApacheMaven3.5.0:自己去官网下载合适的版本。
ApacheTomcat7.0.77:部署在本地为了调试,软件版本与远程服务器的一致。不确定如果不这样做的话,远程部署是否会失败。至于版本为什么是7不是9的原因,说多了都是泪!网上找的教材以介绍7居多,so so……
Nexus-3.3.1:自己去官网下载。还可以顺便下载usermanual的PDF文档。作为本地私服管理Maven的repository,这样做的好处,大家去百度就知道了。
2)CentOS7
CentOS7是shell命令行模式,没有图形界面。
OS:操作系统是云服务器开通之后就安装好了的。是个裸机、需要远程以命令行的方式与它交互。其实挺好用的,上网免费啊!所以我基本是用yum指令下载安装软件。
JDK1.8:通过yum命令卸载openJDK,windows下载linux版本的JDK1.8,通过Xshell上传至服务器,再进行安装。因为maven还是nexus的manual里说了不支持openJDK,我忘了具体是哪一个,大家遇到了可以告诉我,谢谢。配置java环境变量,大家可以在CSDN里搜索相关文章。
Apachehttpd:没说的,linux想上网你最好安装它。通过yum指令,会把一些依赖的dependencies一起下载安装,如apr、apr-util、pcre等等。
Apachetomcat:与windows上的版本一致。本地下载,通过Xshell上传至服务器,安装。
3)Summary
以上是我使用的软件,其实还有一个MD5码校验工具,挺好用的,hash-LinuxProbe-1.0.4,就在LinuxProbe网站去下载。
还有一些小地方要注意,比如winsowsftp服务要打开,cmd命令要打开,这些在网上都有教程,感谢CSDN提供的良好交流氛围!
我的PATH设置如下,供大家参考。
二、 各种工具的安装和配置
Win10远程访问CentOS7,使用mavenweb项目,通过tomcat实现CentOS7系统下的web网站搭建。
整个过程中使用到的工具如下所示:
1)Win10
Eclipse
自带有Maven和Tomcat的插件,没有的话,自己去Eclipse的marketplace下载。
Eclipse里面创建mavenweb项目的时候,记得要先在界面的右上角把模式切到J2EE,这样tomcat的服务器图标才会显示出来,随后的操作才会正确。
猫猫出来啦!OoO!
Nexus
在PATH路径中添加nexus的bin文件夹。
然后,在cmd命令框里运行nexus.exe/run指令,激活nexus的服务,nexus即可与maven一起正常工作了。
想知道nexus如何与maven进行互动的,可以去下载官方文档。
http://www.sonatype.org/nexus/resources/resources-book-links-and-downloads/
Maven
1) 在maven路径下的conf文件夹里,修改setting.xml文件。
-- 个人建议不要将repository部署在C盘,nexus也会调用它里面的数据,所以更改它的路径是很有必要的。格式如下:
--配置远程tomcat的用户密码(否则连不了服务器)以及本地nexus的访问用户密码(如果你不安装nexus的话,就没这方面的困扰了!OoO!)。
设置镜像服务器,maven创建各种东西需要的插件,都从这里下载。一般内置两个,一个是本地的nexus,一个是外网的aliyun或者maven2源,都可以。(第三方jar包如何管理,笔者不太清楚,以后如果参与到具体项目开发了,会持续更新的)
Profile和activeprofile也是需要设置的,笔者不清楚为什么,maven官网的manual是这样写的,笔者照猫画虎!OoO!profile里的repository和pluginrepository以及activeprofile是对应的,必须都要设置。
2) 在系统环境变量里,新建MAVEN_HOME
将maven安装路径的bin文件放入PATH地址
3) PATH里面新建CATALINA
4) Eclipse里新建mavenproject
选择webapp
给个名称
新项目就建好了
别急,还有些操作要继续。在项目名上右键选择properties,选择maven下面的projectfacets,点击Convertto facted format。
勾选Dynamicweb module,并在右边的runtimes里new加入相应地tomcat的服务器,我这里是7。然后点击左下角的furtherconfiguration available…
设置contentdirectory为:src/main/webapp
然后安静的等待更新完毕,在更新好的项目里的编辑pom.xml文件。
加入defaultGoal和plugin。
<defaultGoal>compile</defaultGoal>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>http://yourwebsite path:8080/manager/text</url>
<username>auto</username>
<password>Temp@0qwe</password>
<update>true</update>
<path>/${project.artifactId}</path>
</configuration>
</plugin>
</plugins>
</build>
然后你可以点选Eclipse上的小猫猫图标启动tomcat,也可以手动的去tomcat安装路径下的bin文件夹里,双击打开startup.bat文件,都可以启动tomcat。
最后在项目名上右键,选择runas..->maven build..,然后在弹出的界面里的Goals栏里输入:tomcat7:deploy,就可以将web发布到远程的服务器咯。如果有更新需要再次部署的话,选择runas->maven build..在Goals里输入:tomcat7:redeploy。
看看你简单的网页吧!
2)CentOS
Tomcat7
在/你的安装路径/conf/下,编辑tomcat-users.xml,增加如图所示的代码:
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="admin" password="password" roles="manager-script"/>
//这里的代码是给你们参照的。这里的admin和password,要与win10端Maven的conf/settings.xml中的<Server>里保持一致。
(Tomcat inCentOS)
(#Maven inWin10)
然后在conf/Catalina/localhost/目录下创建一个manager.xml文件,写入如下值:
<?xml version="1.0" encoding="UTF-8"?>
<Context privileged="true" antiResourceLocking="false"
docBase="${catalina.home}/webapps/manager">
<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" />
</Context>
最后进入bin文件夹,用sh命令启动tomcat服务器。CentOS里的配置就结束了!
三、 参照
CentOS中文站;
CSDNblog;
Linux社区;
(未完待续,持续更新ing)
四、 总结
笔者的下一步的想法是设计一个简单的网页,将后台Scrapy并保存在MariaDB或者MongeDB的数据根据查询字段,显示在网页上。新人自学中,大家有啥建议可以提出来,互相学习啊!