4.2 KiB
4.2 KiB
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 repository | Description | Available in GitLab version |
---|---|---|
Container Registry | The GitLab Container Registry enables every project in GitLab to have its own space to store Docker images. | 8.8+ |
Dependency Proxy (PREMIUM) | The GitLab Dependency Proxy sets up a local proxy for frequently used upstream images/packages. | 11.11+ |
Conan Repository (PREMIUM) | The GitLab Conan Repository enables every project in GitLab to have its own space to store Conan packages. | 12.6+ |
Maven Repository (PREMIUM) | The GitLab Maven Repository enables every project in GitLab to have its own space to store Maven packages. | 11.3+ |
NPM Registry (PREMIUM) | The GitLab NPM Registry enables every project in GitLab to have its own space to store NPM packages. | 11.7+ |
NuGet Repository (PREMIUM) | 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.
Format | Use case |
---|---|
Cargo | Cargo is the Rust package manager. Build, publish and share Rust packages |
Chef | Configuration management with Chef using all the benefits of a repository manager. |
CocoaPods | Speed up development with Xcode and CocoaPods. |
Conda | Secure and private local Conda repositories. |
CRAN | Deploy and resolve CRAN packages for the R language. |
Debian | Host and provision Debian packages. |
Go | Resolve Go dependencies from and publish your Go packages to GitLab. |
Opkg | Optimize your work with OpenWrt using Opkg repositories. |
P2 | Host all your Eclipse plugins in your own GitLab P2 repository. |
Puppet | Configuration management meets repository management with Puppet repositories. |
PyPi | Host PyPi distributions. |
RPM | Distribute RPMs directly from GitLab. |
RubyGems | Use GitLab to host your own gems. |
SBT | Resolve dependencies from and deploy build output to SBT repositories when running SBT builds. |
Vagrant | Securely 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.
- Use a project as a package registry to publish all of your packages to one project.
- Working with a monorepo: Learn how to publish multiple different packages from one monorepo project.