Documentation Nexus Repository Manager 3.0

Our documentation site has moved. For the most current version, please see

Repository Management with Nexus

If you are developing software without a repository manager you are likely missing a number of opportunities to reduce some pretty obvious inefficiencies. If everyone on your team has to hit public repositories like the Central Repository to download components, you are missing out on some simple gains in speed and efficiency. If you don't have a local place to deploy components you are forced to share binary components using half-measures and compromises such as storing binaries in source control. Stop developing in the Dark Ages, read this book, and start using a repository manager. Trust us, once you start using a Nexus Repository Manager, you'll wonder how you ever functioned without it.


Sonatype, Inc. Manfred Moser Dulani Wallace

1. Introduction
2. How to Use this Documentation
1. Concepts
1.1. Introduction
1.2. The Basics - Components, Repositories and Repository Formats
1.3. An Example - Maven Repository Format
1.4. Repository Management
1.5. Software Supply Chain Automation
2. Installation and Running
2.1. Introduction
2.2. Downloading
2.3. Java Runtime Environment
2.4. Installing and Running with the Distribution Archive
2.5. Installing with Docker
2.6. Upgrading
2.7. Configuring as a Service
2.7.1. Setting up as a Service on Linux
2.7.2. Running as a Service on Windows
2.7.3. Running as a Service on Mac OS X
2.8. Running Behind a Reverse Proxy
2.8.1. Example: Reverse Proxy on Restricted Ports
2.8.2. Example: Reverse Proxy Virtual Host at Custom Context Path
2.8.3. Example: Reverse Proxy SSL Termination at Base Path
2.9. Accessing the User Interface
2.10. Directories
2.10.1. Installation Directory
2.10.2. Data Directory
2.11. Configuring the Runtime Environment
2.11.1. Updating Memory Allocation and other JVM Paramaters
2.11.2. Changing the HTTP Port
2.11.3. Changing the Context Path
2.11.4. Configuring the Data Directory Location
2.12. Uninstalling
3. Using the User Interface
3.1. Introduction
3.2. User Interface Overview
3.3. Searching for Components
3.3.1. Search Criteria and Component Attributes
3.3.2. Search Results
3.3.3. Preconfigured Searches
3.3.4. Example Use Case - SHA-1 Search
3.4. Browsing Repositories and Repository Groups
3.5. Viewing Component Information
3.6. Viewing Asset Information
3.7. Working with Your User Profile
3.7.1. Changing Your Password
4. Configuration
4.1. Introduction
4.2. System Configuration
4.2.1. Bundles
4.2.2. Accessing and Configuring Capabilities
4.2.3. Email Server
4.2.4. Base URL Creation
4.2.5. HTTP and HTTPS Request and Proxy Settings
4.2.6. Configuring and Executing Tasks
4.3. Repository Management
4.3.1. Blob Stores
4.3.2. Proxy Repository
4.3.3. Hosted Repository
4.3.4. Repository Group
4.3.5. Managing Repositories and Repository Groups
4.3.6. Repository Management Example
4.4. Support Features
4.4.1. Analytics
4.4.2. Logging and Log Viewer
4.4.3. Metrics
4.4.4. Support ZIP
4.4.5. System Information
5. Security
5.1. Introduction
5.2. Realms
5.3. Privileges
5.4. Roles
5.5. Users
5.6. Anonymous Access
5.7. LDAP
5.7.1. Introduction
5.7.2. Enabling the LDAP Authentication Realm
5.7.3. LDAP Connection and Authentication
5.7.4. User and Group Mapping
5.8. Authentication via Remote User Token
5.9. Configuring SSL
5.9.1. Outbound SSL - Trusting SSL Certificates of Remote Repositories
5.9.2. Outbound SSL - Trusting SSL Certificates Globally
5.9.3. Outbound SSL - Trusting SSL Certificates Using Keytool
5.9.4. Inbound SSL - Configuring to Serve Content via HTTPS
6. Maven Repositories with Apache Maven and Other Tools
6.1. Introduction
6.2. Maven Repository Format
6.3. Proxying Maven Repositories
6.4. Hosting Maven Repositories
6.5. Grouping Maven Repositories
6.6. Browsing and Searching Maven Repositories
6.7. Configuring Apache Maven
6.8. Configuring Apache Ant and Apache Ivy
6.9. Configuring Apache Ant and Eclipse Aether
6.10. Configuring Gradle
6.11. SBT
6.12. Leiningen
7. .NET Package Repositories with NuGet
7.1. Introduction
7.2. NuGet Repository Format
7.3. NuGet Proxy Repositories
7.4. NuGet Hosted Repositories
7.5. NuGet Repository Groups
7.6. Accessing Packages in Repositories and Groups
7.7. Deploying Packages to NuGet Hosted Repositories
7.7.1. Accessing your NuGet API Key
7.7.2. Creating a Package for Deployment
7.7.3. Command line based Deployment to a NuGet Hosted Repository
7.8. Integration with Visual Studio
8. Private Registry for Docker
8.1. Introduction
8.2. SSL and Repository Connector Configuration
8.2.1. Tips for SSL Certificate Usage
8.3. Support for Docker Registry API
8.4. Proxy Repository for Docker
8.5. Hosted Repository for Docker (Private Registry for Docker)
8.6. Repository Groups for Docker
8.7. Authentication
8.8. Accessing Repositories
8.9. Searching
8.10. Pulling Images
8.11. Pushing Images
9. Node Packaged Modules and npm Registries
9.1. Introduction
9.2. Proxying npm Registries
9.3. Private npm Registries
9.4. Grouping npm Registries
9.5. Browsing npm Registries and Searching Modules
9.6. Configuring npm
9.7. npm Security
9.8. Publishing npm Packages
9.9. Deprecating npm Packages
10. Bower Repositories
10.1. Introduction
10.2. Proxying Bower Repositories
10.3. Hosting Bower Repositories
10.4. Bower Repository Groups
10.5. Installing Bower
10.6. Configuring Bower Package Download
10.7. Browsing Bower Repositories and Searching Packages
10.8. Registering Bower Packages
11. PyPI Repositories
11.1. Introduction
11.2. Proxying PyPI Repositories
11.3. Hosting PyPI Repositories
11.4. PyPI Repository Groups
11.5. Installing PyPI Client Tools
11.6. Configuring PyPI Client Tools
11.7. SSL Usage for PyPI Repositories
11.8. Browsing PyPI Repositories and Searching Packages
11.9. Uploading PyPI Packages
12. Ruby, RubyGems and Gem Repositories
12.1. Introduction
12.2. Proxying Gem Repositories
12.3. Private Hosted Gem Repositories
12.4. Grouping Gem Repositories
12.5. Using Gem Repositories
12.6. Pushing Gems
13. Raw Repositories, Maven Sites and More
13.1. Introduction
13.2. Creating a Hosted Raw Repository
13.3. Creating and Deploying a Maven Site
13.3.1. Creating a New Maven Project
13.3.2. Configuring Maven for Site Deployment
13.3.3. Adding Credentials to Your Maven Settings
13.3.4. Publishing a Maven Site
13.4. Proxying and Grouping Raw Repositories
13.5. Uploading Files to Hosted Raw Repositories
14. REST and Integration API
14.1. Introduction
14.2. Writing Scripts
14.3. Managing and Running Scripts
14.4. Examples
15. Bundle Development
15.1. Introduction
15.2. Installing Bundles
15.3. Bundle Development Overview
15.4. Support for a New Repository Format
15.4.1. Format, Recipe and Facet
15.4.2. Storage
15.4.3. User Interface
15.4.4. Tasks
15.5. Contributing Bundles
A. Contributing
B. Copyright
C. Creative Commons License
C.1. Creative Commons BY-NC-ND 3.0 US License
C.2. Creative Commons Notice