GitLab Package Registry

GitLab Packages allows organizations to utilize GitLab as a private repository for a variety of common package managers. Users are able to build and publish packages, which can be easily consumed as a dependency in downstream projects.

The Packages feature allows GitLab to act as a repository for the following:

Software repositoryDescriptionAvailable in GitLab version
Container RegistryThe GitLab Container Registry enables every project in GitLab to have its own space to store Docker images.8.8+
Dependency Proxy The GitLab Dependency Proxy sets up a local proxy for frequently used upstream images/packages.11.11+
Conan Repository The GitLab Conan Repository enables every project in GitLab to have its own space to store Conan packages.12.6+
Maven Repository The GitLab Maven Repository enables every project in GitLab to have its own space to store Maven packages.11.3+
NPM Registry The GitLab NPM Registry enables every project in GitLab to have its own space to store NPM packages.11.7+
NuGet Repository The GitLab NuGet Repository will enable every project in GitLab to have its own space to store NuGet packages.12.8+

Suggested contributions

Consider contributing to GitLab. This development documentation will guide you through the process. Or check out how other members of the community are adding support for PHP or Terraform.

FormatUse case
CargoCargo is the Rust package manager. Build, publish and share Rust packages
ChefConfiguration management with Chef using all the benefits of a repository manager.
CocoaPodsSpeed up development with Xcode and CocoaPods.
CondaSecure and private local Conda repositories.
CRANDeploy and resolve CRAN packages for the R language.
DebianHost and provision Debian packages.
GoResolve Go dependencies from and publish your Go packages to GitLab.
OpkgOptimize your work with OpenWrt using Opkg repositories.
P2Host all your Eclipse plugins in your own GitLab P2 repository.
PuppetConfiguration management meets repository management with Puppet repositories.
PyPiHost PyPi distributions.
RPMDistribute RPMs directly from GitLab.
RubyGemsUse GitLab to host your own gems.
SBTResolve dependencies from and deploy build output to SBT repositories when running SBT builds.
VagrantSecurely host your Vagrant boxes in local repositories.

Package workflows

Learning how to use the GitLab Package Registry will help you build your own custom package workflow.