Documentation Nexus Repository Manager 3.2

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.

Authors

Sonatype, Inc. Manfred Moser Dulani Wallace

Preface
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. Configuring as a Service
2.6.1. Setting up as a Service on Linux
2.6.2. Running as a Service on Windows
2.6.3. Running as a Service on Mac OS X
2.7. Running Behind a Reverse Proxy
2.7.1. Example: Reverse Proxy on Restricted Ports
2.7.2. Example: Reverse Proxy Virtual Host at Custom Context Path
2.7.3. Example: Reverse Proxy SSL Termination at Base Path
2.8. Accessing the User Interface
2.9. Directories
2.9.1. Installation Directory
2.9.2. Data Directory
2.10. Configuring the Runtime Environment
2.10.1. Updating Memory Allocation and other JVM Paramaters
2.10.2. Changing the HTTP Port
2.10.3. Changing the Context Path
2.10.4. Configuring the Data Directory
2.11. 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. Nodes
4.2.5. Base URL Creation
4.2.6. HTTP and HTTPS Request and Proxy Settings
4.2.7. 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.3.7. Content Selectors
4.4. License Management
4.4.1. Uploading a License
4.4.2. Managing Recent Connections
4.5. Support Features
4.5.1. Analytics
4.5.2. Logging and Log Viewer
4.5.3. Metrics
4.5.4. Support ZIP
4.5.5. System Information
5. Backing Up and Restoring Nexus Repository Manager
5.1. Introduction
5.2. Preparing a Backup for Nexus Repository Manager
5.3. Configuring and Running an Export configuration & metadata for backup Task
5.4. Restoring Exported Databases
6. Security
6.1. Introduction
6.2. Realms
6.3. Privileges
6.4. Roles
6.5. Users
6.6. Anonymous Access
6.7. LDAP
6.7.1. Introduction
6.7.2. Enabling the LDAP Authentication Realm
6.7.3. LDAP Connection and Authentication
6.7.4. User and Group Mapping
6.8. Security Setup with User Tokens
6.8.1. Introduction
6.8.2. Enabling and Resetting User Tokens
6.8.3. Accessing User Tokens in Realms
6.8.4. Accessing and Using Your User Token
6.9. Authentication via Remote User Token
6.10. Configuring SSL
6.10.1. Outbound SSL - Trusting SSL Certificates of Remote Repositories
6.10.2. Outbound SSL - Trusting SSL Certificates Globally
6.10.3. Outbound SSL - Trusting SSL Certificates Using Keytool
6.10.4. Inbound SSL - Configuring to Serve Content via HTTPS
6.11. Auditing
7. Atlassian Crowd Support
7.1. Prepare Atlassian Crowd
7.1.1. Compatibility
7.1.2. Add New Application to the Atlassian Crowd Server
7.2. Configure Nexus Repository Manager Pro Crowd Integration
7.2.1. Enable the Crowd Capability
7.2.2. Configure Nexus Repository Manager Pro to Trust Crowd’s Secure URL (Optional)
7.3. Configure Nexus Repository Manager Pro Crowd Security
7.3.1. Mapping a Crowd Group to Roles
7.3.2. Mapping a Crowd User to Roles
8. Repository Health Check
8.1. Introduction
8.2. Configuring Repository Health Check
8.2.1. Configuration Per Repository
8.2.2. Global Configuration
8.3. Accessing the Detailed Repository Health Check Report
9. Maven Repositories with Apache Maven and Other Tools
9.1. Introduction
9.2. Maven Repository Format
9.3. Proxying Maven Repositories
9.3.1. Proxying the Oracle Maven Repository
9.4. Hosting Maven Repositories
9.5. Grouping Maven Repositories
9.6. Browsing and Searching Maven Repositories
9.7. Configuring Apache Maven
9.8. Configuring Apache Ant and Apache Ivy
9.9. Configuring Apache Ant and Eclipse Aether
9.10. Configuring Gradle
9.11. SBT
9.12. Leiningen
10. .NET Package Repositories with NuGet
10.1. Introduction
10.2. NuGet Repository Format
10.3. NuGet Proxy Repositories
10.4. NuGet Hosted Repositories
10.5. NuGet Repository Groups
10.6. Accessing Packages in Repositories and Groups
10.7. Deploying Packages to NuGet Hosted Repositories
10.7.1. Accessing your NuGet API Key
10.7.2. Creating a Package for Deployment
10.7.3. Command line based Deployment to a NuGet Hosted Repository
10.8. Integration with Visual Studio
11. Private Registry for Docker
11.1. Introduction
11.2. SSL and Repository Connector Configuration
11.2.1. Tips for SSL Certificate Usage
11.3. Support for Docker Registry API
11.4. Proxy Repository for Docker
11.5. Hosted Repository for Docker (Private Registry for Docker)
11.6. Repository Groups for Docker
11.7. Authentication
11.8. Accessing Repositories
11.9. Searching
11.10. Pulling Images
11.11. Pushing Images
12. Node Packaged Modules and npm Registries
12.1. Introduction
12.2. Proxying npm Registries
12.3. Private npm Registries
12.4. Grouping npm Registries
12.5. Browsing npm Registries and Searching Modules
12.6. Configuring npm
12.7. npm Security
12.7.1. Authentication Using Realm and Login
12.7.2. Authentication Using Basic Auth
12.8. Publishing npm Packages
12.9. Deprecating npm Packages
13. Bower Repositories
13.1. Introduction
13.2. Proxying Bower Repositories
13.3. Hosting Bower Repositories
13.4. Bower Repository Groups
13.5. Installing Bower
13.6. Configuring Bower Package Download
13.7. Browsing Bower Repositories and Searching Packages
13.8. Registering Bower Packages
14. PyPI Repositories
14.1. Introduction
14.2. Proxying PyPI Repositories
14.3. Hosting PyPI Repositories
14.4. PyPI Repository Groups
14.5. Installing PyPI Client Tools
14.6. Configuring PyPI Client Tools
14.7. SSL Usage for PyPI Repositories
14.8. Browsing PyPI Repositories and Searching Packages
14.9. Uploading PyPI Packages
15. Ruby, RubyGems and Gem Repositories
15.1. Introduction
15.2. Proxying Gem Repositories
15.3. Private Hosted Gem Repositories
15.4. Grouping Gem Repositories
15.5. Using Gem Repositories
15.6. Pushing Gems
16. Raw Repositories, Maven Sites and More
16.1. Introduction
16.2. Creating a Hosted Raw Repository
16.3. Creating and Deploying a Maven Site
16.3.1. Creating a New Maven Project
16.3.2. Configuring Maven for Site Deployment
16.3.3. Adding Credentials to Your Maven Settings
16.3.4. Publishing a Maven Site
16.4. Proxying and Grouping Raw Repositories
16.5. Uploading Files to Hosted Raw Repositories
17. REST and Integration API
17.1. Introduction
17.2. Writing Scripts
17.3. Managing and Running Scripts
17.4. Examples
18. Bundle Development
18.1. Introduction
18.2. Installing Bundles
18.3. Bundle Development Overview
18.4. Support for a New Repository Format
18.4.1. Format, Recipe and Facet
18.4.2. Storage
18.4.3. User Interface
18.4.4. Tasks
18.5. Contributing Bundles
19. Webhooks
19.1. Introduction
19.2. Using Webhooks
19.3. Enabling A Global Webhook Capability
19.4. Enabling A Repository Webhook Capability
19.5. Working With HMAC Payloads
19.6. Example Headers And Payloads
19.6.1. Example Audit Payload
19.6.2. Example Repository Payload
19.6.3. Example Repository Asset Payload
19.6.4. Example Repository Component Payload
20. Upgrading
20.1. Introduction
20.2. Why Upgrade?
20.3. Upgrading from 2.x to 2.y
20.4. Upgrading from 3.x to 3.y
20.5. Upgrading 2.x to 3.y
20.5.1. Upgrade Process and Expectations
20.5.2. What Is Upgraded
20.5.3. What Is Not Upgraded
20.5.4. Repository Format Support
20.5.5. Designing Your Upgrade Plan
20.5.6. Supported Installation Scenarios
20.5.7. Data Transfer Methods
20.5.8. File System Considerations
20.5.9. Configuration Details for Upgrading
20.5.10. Security Compatibility
20.5.11. Optimization, Performance, and Tuning
20.5.12. Starting the Upgrade
20.5.13. Enabling the Upgrade Capability in Version 2
20.5.14. Enabling the Upgrade Capability in Version 3.1 (or later)
20.5.15. Upgrading Content
20.5.16. Running the Upgrade
20.5.17. After the Upgrade
A. Contributing
B. Copyright
C. Creative Commons License
C.1. Creative Commons BY-NC-ND 3.0 US License
C.2. Creative Commons Notice