Getting Started
Artifactory includes the following default binarystore.xml configuration.
<config version="v1"> <chain template="file-system"/> </config>
- <config> The wrapper element containing a
chain
element. The binarystore.xml must start and end with this element. - <chain template> The structure of the filestore. To use one of the built-in filestores, the chain element needs to include the corresponding template attribute.
The <config>
tag is a marker element for versioning configurations. It does not affect Artifactory's settings.
Chain Templates
The following sections describe the basic chain templates come built-in with Artifactory and are ready for you to use out-of-the-box, as well as other binary providers that are included in the default chains.
Click on the template name to navigate to the corresponding binary provider template.
file-system | The most basic filestore configuration for Artifactory used for a local or mounted filestore. |
cache-fs | Works the same way as filesystem but also caches download requests that are cleaned up using an LRU (Least Recently Used) protocol. Improves performance of instances with high IOPS (I/O Operations) or slow NFS access. |
full-db | All the metadata and the binaries are stored as blobs in the Artifactory database with an additional layer of caching. |
full-db-direct | All the metadata and the binaries are stored as blobs in the Artifactory database without caching. |
s3-storage-v3 | A file store configuration to use S3 Cloud Storage using the official Amazon SDK. You can optimize the JFrog Platform for the download of large binaries, such as Docker images, from cloud storage, by delegating its function as a registry so it responds to download requests with a link. For more information, see Direct Cloud Storage Download. |
cluster-s3-storage-v3 | A file store configuration where data is temporarily stored on the file system of each node using the Eventual-Cluster Binary Provider , and is then passed on to your S3 object storage for persistent storage You can optimize the JFrog Platform for the download of large binaries, such as Docker images, from cloud storage, by delegating its function as a registry so it responds to download requests with a link. For more information, see Direct Cloud Storage Download. |
s3-sharding | A file store configuration to use multiple S3 buckets in a sharded configuration. |
s3-direct | A file store configuration that allows directly uploading to S3, bypassing the eventual upload mechanism. |
google-storage-v2 | The google-storage-v2 template is used for configuring Google Cloud Storage as the remote filestore using the Google native client. |
azure-blob-storage | This is the setting used for Azure Blob Storage as the remote filestore. |
double-shards | A pure sharding configuration that uses two physical mounts with one copy, which results in each artifact saved only once. |
redundant-shards | A pure sharding configuration that uses two physical mounts with two copies, which results in each shard storing a copy of each artifact. |
cluster-filesystem | A filestore configuration where each node has its own local filestore (just like the file-system chain) and is connected to all other nodes through dynamically allocated Remote Binary Providers using the Sharding-Cluster provider. |
cluster-google-storage-v2 | This is the setting used for Google Cloud Storage in a cluster configuration as the remote filestore. |
cluster-azure-blobstorage | This is the setting used for Azure Blob Storage. It is based on the sharding and dynamic provider logic that synchronizes the cluster-file-system. |
Modifying an Existing Chain Template
To accommodate any specific requirements you may have for your filestore, modify one of the existing chain templates either by extending it with additional binary providers or by overriding one of its attributes.
For example, the built-in filesystem chain template stores binaries under the $JFROG_HOME/artifactory/var/data/artifactory/filestore
directory. To modify the template so that it stores binaries under $FILESTORE/binaries
you could extend it as follows:
<!-- file-system chain template structure --> <config version="v1"> <chain template="file-system"/> <provider id="file-system" type="file-system"> <!-- Modify the "file-system" binary provider --> <baseDataDir>$FILESTORE/binaries</baseDataDir> <!-- Override the <baseDataDir> attribute --> </provider> </config>
Configuring a Custom Filestore From Scratch
In addition to the built-in filestore chain templates below, you may construct custom chain template to accommodate any filestore structure you need.
Since the different binary providers in the filestore must be compatible with each other, misconfiguration might lead to data loss. For configuring a custom filestore, contact JFrog Support.