JFrog Artifactory vs GitLab
On this page
JFrog Artifactory is a tool designed to store the binary output of the build process for use in distribution and deployment. Artifactory provides support for a number of package formats such as Maven, Debian, NPM, Helm, Ruby, Python, and Docker. JFrog offers high availability, replication, disaster recovery, scalability, and works with many on-prem and cloud storage offerings.
GitLab also offers high availability and replication, and scalability, also available using on-prem or cloud storage, but at the moment offers less package type compatibility than Artifactory does (Maven, Docker, NPM). However, GitLab also offers functionality to automate the entire DevOps life cycle from planning, to creation, build, verify, security testing, deploying, and monitoring. The built-in binary package repositories that GitLab offers are just the tip of the ice-berg.
- Base server subscription cost is $3k/year (Pro), Pro X adds X-Ray add-on product, training, and better support for $14.4k/year. Enterprise supports multi-site with up to 3 servers, advanced storage (including cloud), and central control (Mission Control) add-on for about $30k/year. Their newest offering is Enterprise+ which is considered "platform" purchase, in that you are getting almost everything JFrog offers (all Artifactory add-ons), for 6 servers. This we've heard runs about $124k/year.
- Pricing page
- Heard from procurement at a prospect:
"Enterprise+ was $95,000 in December 2018 and got increased by 20% in January 2019, so $124,000. That's for a 6 server licence" "sales guy told them to buy at list or walk away"
Built-in Container Registry
GitLab Container Registry is a secure and private registry for Docker images. It allows for easy upload and download of images from GitLab CI. It is fully integrated with Git repository management.
Full Binary Repository
A binary repository is a software repository for packages, artifacts and their corresponding metadata. It can be used to store binary files produced by an organization itself, such as product releases and nightly product builds, or for third party binaries which must be treated differently for both technical and legal reasons.
Docker image support
Supports storage and retreival of Docker style containers.
Container registry webhooks
Trigger actions after a successful push to a registry to integrate Docker Hub with other services.
Container registry high availability
Highly available through the use of multiple replicas of all containers and metadata such that if a machine fails, the regitry continues to operate and can be repaired.
Container registry geographic replication
Supports distributed teams by running multiple registry instances across several regions and syncing between data centers.
Supports private container registries
Offers the ability to have private container registries and repositories
SaaS container registry offering
The container registry ia available as a software service.
Self-managed container registry offering
Container registry which is available to be self-installed and self-managed in an organizations data center, co-hosted, or in a chosen cloud provider.
Use container registry through REST API
Enables support for automation and integration of container registry through a REST API.
Helm chart repository support
Supports storage and retreival of Helm charts.
GitLab’s Maven repository makes it easier to publish and share Java libraries across an organization, and ensure dependencies are managed correctly. It is fully integrated with GitLab, including authentication and authorization.
GitLab’s NPM repository makes it easier to publish and share NPM packages across an organization, and ensure dependencies are managed correctly. It is fully integrated with GitLab, including authentication and authorization.
If you feel there are inaccurate statements in this comparison or a tool missing, please edit this page or propose edits by opening an issue. You can also send an email to firstname.lastname@example.org with your suggested edits if you're unable to open an issue or edit this page.
We strive for technical accuracy and will review and update this post for inaccuracies as quickly as possible.