как установить repoLayoutRef по коду для удаленного докера
При объявлении удаленного репозитория докеров внутри докера с помощью файла yaml (см. https://www.jfrog.com/confluence/display/JFROG/Artifactory+YAML+Configuration) я не могу установить repoLayoutRef на простое значение по умолчанию. если я хочу сохранить его определение с помощью графического интерфейса, я вижу, что определение repoLayoutRef должно быть установлено, поэтому я полагаю, что это обязательно. Если repoLayout не установлен, удаленный репозиторий докеров не работает.
Файл yaml не позволяет установить его
Я пробую с содержанием param.yaml
remoteRepositories
docker-via-intranet:
type: docker
url: https://dockerproxy.mydomain
proxy: intranet-proxy
enableTokenAuthentication: true
export BASE_URL="http://localhost:8081/artifactory"
export AUTH=" -u admin:((jcr_admin_password))"
curl $AUTH -X PATCH "http://localhost:8081/artifactory/api/system/configuration" -H "Content-Type:application/yaml" -T param.yml
Если я загляну внутрь сгенерированного yaml, я вижу, что обязательного поля нет:<repoLayoutRef>simple-default<repoLayoutRef>
видеть:
<remoteRepository>
<key>docker-via-intranet</key>
<type>docker</type>
<includesPattern>**/*</includesPattern>
<dockerApiVersion>V2</dockerApiVersion>
<forceNugetAuthentication>false</forceNugetAuthentication>
<blackedOut>false</blackedOut>
<handleReleases>true</handleReleases>
<handleSnapshots>true</handleSnapshots>
<maxUniqueSnapshots>0</maxUniqueSnapshots>
<maxUniqueTags>0</maxUniqueTags>
<blockPushingSchema1>true</blockPushingSchema1>
<suppressPomConsistencyChecks>true</suppressPomConsistencyChecks>
<propertySets/>
<archiveBrowsingEnabled>false</archiveBrowsingEnabled>
<url>https://registry-1.docker.io/</url>
<offline>false</offline>
<hardFail>false</hardFail>
<storeArtifactsLocally>true</storeArtifactsLocally>
<fetchJarsEagerly>false</fetchJarsEagerly>
<fetchSourcesEagerly>false</fetchSourcesEagerly>
<retrievalCachePeriodSecs>7200</retrievalCachePeriodSecs>
<assumedOfflinePeriodSecs>300</assumedOfflinePeriodSecs>
<unusedArtifactsCleanupPeriodHours>0</unusedArtifactsCleanupPeriodHours>
<shareConfiguration>false</shareConfiguration>
<synchronizeProperties>false</synchronizeProperties>
<listRemoteFolderItems>true</listRemoteFolderItems>
<rejectInvalidJars>false</rejectInvalidJars>
<blockMismatchingMimeTypes>true</blockMismatchingMimeTypes>
<bypassHeadRequests>false</bypassHeadRequests>
<allowAnyHostAuth>false</allowAnyHostAuth>
<socketTimeoutMillis>15000</socketTimeoutMillis>
<enableCookieManagement>false</enableCookieManagement>
<enableTokenAuthentication>false</enableTokenAuthentication>
<proxyRef>internet-proxy</proxyRef>
<propagateQueryParams>false</propagateQueryParams>
</remoteRepository>
1 ответ
Вы должны использовать параметр "repoLayout", чтобы установить макет репозитория, например:
remoteRepositories:
test-docker:
type: docker
url: https://dockerproxy.mydomain
enableTokenAuthentication: true
repoLayout: simple-default