我如何设置Artifactory作为“ROOT”应用程序在Tomcat中运行?

阿里尔Kabov
2020-01-14 26

免责声明:JFrog推荐的删除“/artifactory”上下文的方法是通过负载平衡器或反向代理来实现。
不鼓励手工编辑Tomcat路径,并且在Artifactory的未来版本中不支持手工编辑。

本文的目的是为那些决定通过修改Tomcat来实现这一目标的用户提供一般指导。

主题

如何配置Artifactory在Tomcat中作为“ROOT”应用程序运行
请注意,每个方法都必须在Artifactory未运行时执行。

先决条件

Artifactory版本:5.X& 6.X

开始Artifactory 5.9,以防万一HA集群,应将以下内容添加到每个节点的美元ARTIFACTORY_HOME / etc / ha-node.propertiesaccess.context.url = https:// < HOST_IP >: <口> /访问
例如,ha-node是如何。属性应该看起来像:node.id = art1
context.url = https://10.0.0.121:8081
access.context.url = https://10.0.0.121:8081访问
membership.port = 10001
主= true

人工6.0及以上,则应添加以下System Property美元ARTIFACTORY_HOME / etc / artifactory.system.propertiesartifactory.context.path = /

指令

方法#1 -重命名artifactory.war

1.重命名美元ARTIFACTORY_HOME / webapps / artifactory.warROOT.war
2.重命名$ ARTIFACTORY_HOME / tomcat / conf /卡特琳娜/ localhost / artifactory.xmlROOT.xml
3.编辑“ROOT.xml文件,将上下文路径更改为/和docBase到$ {artifactory.home} / webapps /ROOT.war
4.删除ARTIFACTORY_HOME / tomcat /工作/美元卡特琳娜/目录(如果存在)
5.删除$ ARTIFACTORY_HOME / tomcat webapps //$ ARTIFACTORY_HOME / tomcat webapps /artifactory/目录(如果存在的话)

升级,以上步骤必须在升级后执行。

方法#2 -编辑server.xml

1.删除$ ARTIFACTORY_HOME / tomcat / conf /卡特琳娜/ localhost /artifactory.xml
2.删除$ ARTIFACTORY_HOME / tomcat webapps //$ ARTIFACTORY_HOME / tomcat webapps /artifactory/目录(如果存在的话)
3.编辑$ ARTIFACTORY_HOME / tomcat / conf /server.xml文件如下:
对于5.4以下的人工版本:
<服务名称=“卡特琳娜”>
<连接器端口= " 8081 " / >
<引擎名称="Catalina" defaultHost="localhost">



> < /上下文
主机> < /
> < /引擎
< /服务>
> < /服务器

Artifactory 5.4及以上版本:
<服务名称=“卡特琳娜”>
<连接器端口= " 8081 " / >
<引擎名称="Catalina" defaultHost="localhost">



> < /上下文
主机> < /
> < /引擎
< /服务>
> < /服务器

Artifactory 5.7及以上版本:
<服务名称=“卡特琳娜”>


<引擎名称="Catalina" defaultHost="localhost">

<上下文路径= " "crossContext = " true "docBase = " $ {artifactory.home} / webapps / artifactory。战争”processTlds = " false " >

> < /上下文
主机> < /
> < /引擎
< /服务>
> < /服务器

Artifactory 6.3及以上版本:
<服务名称=“卡特琳娜”>
relaxedPathChars =“[]”relaxedQueryChars =“[]”/>

<引擎名称="Catalina" defaultHost="localhost">

<上下文路径= " "crossContext = " true "docBase = " $ {artifactory.home} / webapps / artifactory。战争”processTlds = " false " >

> < /上下文
主机> < /
> < /引擎
< /服务>
> < /服务器

sendReasonPhrase="true" -在5.6.1中添加,以允许Artifactory的Tomcat版本更新以及YUM客户端和YUM存储库之间的交互。
**crossContext="true" -这对于确保通过Artifactory端口访问访问服务器的可能性非常重要。

升级
1.备份server.xml并将其恢复到升级说明中提到的新“tomcat”目录。
2.删除$ ARTIFACTORY_HOME / tomcat / conf /卡特琳娜/ localhost /artifactory.xml
3.删除$ ARTIFACTORY_HOME / tomcat webapps //$ ARTIFACTORY_HOME / tomcat webapps /artifactory/目录(如果存在的话)