我正在使用docker-compose
运行Artifactory CPP CE 7.7.3和Traefik v2.2。该服务仅在http://localhost/ui/
上可用。现在,我需要的是一个选项,它允许添加URL路径前缀(例如http://localhost/artifactroy/ui
(。
我的设置
- 我使用了Artifactory文档中描述的设置过程
- 我的docker.compose.yaml是从jfrog-artifactory-cpp-ce-7.7.3-compose.tar.gz:
./templates/docker-compose.yaml
中正式提取的 - 我正在使用反向代理(traefik(。为此,我在docker compose文件中添加了必要的traefik配置行。以下是我添加的一个小摘录:
[...] labels: - "traefik.http.routers.artifactory.rule=Host(`localhost`) && PathPrefix(`/ui`)" - "traefik.http.routers.artifactory.middlewares=artifactory-stripprefix" - "traefik.http.middlewares.artifactory-stripprefix.stripprefix.prefixes=/" - "traefik.http.services.artifactory.loadbalancer.server.port=8082"
有了这个,我成功地通过http://localhost/ui/
访问了artifactory
问题:
我的服务器上运行着多个小型服务,每个服务都可以通过http://localhost/<service-name>
进行计费。这非常方便,并且希望明确此URL与我的生产服务器上的此服务相关。正因为如此,我想要一个类似于http://localhost/artifactroy/ui/...
的URL,而不是http://localhost/ui/...
我很难以这种方式设置艺术工厂。我已经设法从键入例如http://localhost/artifactroy/
重定向到http://localhost/ui/
,但这不是我在生产服务器上想要的。
我做了什么
- 浏览了文档,希望找到一个选项,我可以将其传递给artifactroy以添加前缀(不成功(
- 尝试在整整两天内配置traefik,以更改标头以将休息点设置为
http://localhost/artifactroy/ui/...
(仅部分成功,之后重定向不起作用( - 尝试在
$JFROG_HOME/artifactory/var/etc
中查找负责配置artifactory的配置(不成功(
这可能吗非常感谢您的帮助。。
这个例子(尽管不是traefic例子(为您提供了实现它的指导。产品中已经使用了某些路线。您需要在上面添加一个上下文,以确保所有内容都通过新的上下文路径。
https://jfrog.com/knowledge-base/how-to-remove-artifactory-from-the-context-url-in-artifactory-7/