Deploy Sonatype Artifactory OSS on AppAgile
Version: appagile-artifactory-oss, Atlassian Artifactory OSS Version 5.1.3
This deployment supports the persistent storage model.
|appagile-artifactory-oss-template||Template to create a persistent Artifactory OSS instance.|
|appagile-artifactory-oss-route-template||Template to create a secured route to the Artifactory Service.|
Add templates to be used later. These Templates can be found at https://gitlabappadev.tsi-af.de/OSE3/appagile-artifactory-oss/tree/master/ose-artifacts. Put them into namespace openshift, so that they can be accessed from every project.
$ oc create -f ose-artifacts/appagile-artifactory.json -n openshift
$ oc create -f ose-artifacts/appagile-artifactory-secured-route.json -n openshift
An external database is not required for production use of Artifactory. It can however be used and should then be setup in accordance with https://www.jfrog.com/confluence/display/RTF/Configuring+the+Database <br/>
The connection to that database then needs to be established before the first start of Artifactory using environment variables (see below).
Deploying Artifactory OSS with persistent storage
$ oc process appagile-artifactory-oss-template -v DOCKER_IMAGE_REPOSITORY=vmapgmucrep01.appacd.tsi-af.de:5000/public/appagile-artifactory-oss,DOCKER_IMAGE_TAG=latest,PERSISTENT_VOLUME_CLAIM_SIZE=5Gi | oc create -f -
– Specify the
DOCKER_IMAGE_REPOSITORY (without tag).
– Specify the
DOCKER_IMAGE_TAG to use, e.g. “latest”.
– Specify the required
– This template defines a minimum resource limit of 512Mi memory for the Artifactory OSS containers.
– The desired JVM heap size can be set using the
HEAP_SIZE variable. Suffix the number with
Gi for Gibibyte or
Mi for Mibibyte values.
– If an external database needs to be configured…
DB_TYPE – one of
DB_HOST – the address of the database host
DB_PASSWORD need to be set.
– If the database runs under a different port than the respective standard (e.g. 5432 for Postgres), this can be specified using
– If a different database name than
artifactory is used, the full
DB_URL needs to be specified (e.g.
$ oc process appagile-artifactory-oss-route-template -v HOSTNAME_HTTP=artifactory.atlassian.appad3.tsi-af.de | oc create -f -
– The Artifactory OSS UI will be accessible via the
HOSTNAME_HTTP route path.
Further Infos and Known Issues
This image contains OpenJDK for licensing reasons that forbid the use of Oracle JDK.
Access via secured route
When using a secured route in OpenShift, the issue might occur that Artifactory tries to redirect internally to pages using a (non-existing) insecure route. This results in an error from the router.
This behaviour can be fixed by changing the Artifactory settings (https:///artifactory/webapp/#/admin/configuration/general). Here, the “Custom Base URL” should be set to
Redirects should then work as expected.
Since the Artifactory OSS home directory is set to the mounted volume, every started instance will try to access the same files. However, Artifactory OSS does not support a concurrent access to these files.
Therefore, it is not possible to start more than one functioning instance of Artifactory at a time with this configuration. For the same reason, the recommended pod update strategy is “Recreate” and was also used in the appagile-artifactory-oss-template.