通过REST API在Artifactory中设置baseURL

我正在docker.bintray.io/jfrog/artifactory-oss:5.4.6中使用此docker.bintray.io/jfrog/artifactory-oss:5.4.6 image docker.bintray.io/jfrog/artifactory-oss:5.4.6安装Artifactory,然后将现有的负载平衡器configuration为仅通过https指向它。

当我curl到artifactory它redirect到http:

 < HTTP/2 302 < date: Tue, 05 Dec 2017 22:42:37 GMT < content-length: 0 < location: http://dev-artifactory.lark.com/artifactory/webapp/ 

根据https://www.jfrog.com/confluence/display/RTF/Artifactory+REST+API#ArtifactoryRESTAPI-UpdateCustomURLBase我应该能够发出一个curl命令来改变基地址。 但是,当我尝试这个,这基本上从文档复制:

 curl -v -X PUT "http://localhost:8081/artifactory/api/system/configuration/baseUrl" \ -d 'https://dev-artifactory.lark.com/artifactory' \ -uadmin:XXX -H "Content-type: text/plain" 

我得到了400回,但没有错误信息:

 < HTTP/1.1 400 Bad Request 

我怎样才能改变这个基地url? 理想情况下,我可以设置一个ENV变种。 如果我不能解决这个问题,我想我必须添加标题X-Artifactory-Override-Base-Url ,如https://www.jfrog.com/confluence/display/RTF/Configuring+Artifactory

你发布的确切的命令(添encryption码)在你提到的确切的容器版本上工作得很好。 你试图运行这个命令作为Artifactory仍然启动?

无论如何,即使它工作,更好的方法是使用X-Artifactory-Override-Base-Url 。 这样可以让您为Artifactory实例创build多个不同的名称,并避免更改任何Artifactoryconfiguration。