Fabric8 / JBoss Fuse创建ssh容器创建

时间:2018-03-21 17:30:43

标签: jbossfuse fabric8

我尝试为现有结构创建一个新的SSH容器,并使用此命令成功创建:

fabric:container-create-ssh --proxy-uri http://"root-container":8181/maven/download/ --jvm-opts "-Xms1024m -XX:MaxPermSize=1024m -Xmx2014m -Djavax.net.debug=ssl"  --path /app/testing/ --host "testIP" --private-key ~/.ssh/id_rsa --profile default --profile anotherprofile --resolver localhostname --zookeeper-password "zookeepr pass" testing-container

问题是,一旦我创建了这个新容器,所有现有的ssh容器都会将其maven下载/上传代理更改为上述容器IP 所以不要使用http://"currentroot":8181/maven/download/http://testIP:8181/maven/download/

我尝试了很多来改变"root-container"结构配置文件和默认配置文件中的maven代理但仍然无法达成解决方案? 在添加新的ssh容器而不更新现有的maven repo时,我是否应该采取措施来解决此问题?

1 个答案:

答案 0 :(得分:0)

这取决于anotherprofile是什么 http://host:port/maven/download/ URI在Zookeeper注册表中注册,由结构环境使用。

fabric-maven-proxy个人资料中声明的

fabric功能是负责在安装了此功能/配置文件的任何容器内启动maven代理的功能。请检查您的新容器是否已安装此功能。也许anotherprofilefabric个人资料设为父级?

容器如何使用远程存储库

每个容器在由fabric-agent供应时使用io.fabric8.agent PID配置(OSGi配置管理员),属性为org.ops4j.pax.url.mvn.repositories。它包含一个远程存储库列表,搜索要在容器中安装的工件。

但也有一些活力。 Fabric代理始终搜索Zookeeper注册表,并查找由运行上述功能(fabric-maven-proxy)的其他容器注册的URI。所有此类发现的 URI都预先org.ops4j.pax.url.mvn.repositories属性中的列表。

如何检查日志中的maven问题

如果您将karaf配置文件添加到容器中,您将在org.ops4j.pax.logging PID中提供日志记录配置 - 您可以在hawtio中很好地配置它。默认情况下,有这样的评论部分:

# help with identification of maven-related problems with fabric-maven
#log4j.logger.org.eclipse.aether = TRACE
#log4j.logger.org.apache.http.headers = DEBUG
#log4j.logger.io.fabric8.maven.util = TRACE
#log4j.logger.io.fabric8.maven.url = TRACE
#log4j.logger.io.fabric8.agent.download = DEBUG

您可以取消注释这些内容以查看(更多)有关如何使用maven存储库的更多信息。