Nexus Repository Manager
A repository manager is a key component in a CI/CD pipeline. It has to store a wide variety of artifacts that are needed for both build and deployment. It serves as a hub for storing and sharing both third-party libraries and internally built libraries and applications, that are used for build and deployment. Nexus Repository Manager is one of the most popular applications that addresses this requirement 100% and more. It supports all types of artifacts from raw files through Linux repository specific artifacts like rpm and also Docker images. The Nexus Repository Manager can be configured as a private Docker registry also.
Features
- Nexus Repository Manager could be a hub for sharing both third-party and built components in a CI/CD pipeline.
- A local cache for third-party libraries needed in builds. An essential requirement to increase build velocity and add better monitoring to what used in building applications.
- Industry standard repositories can be set up for both internal and external use, including Docker registries.
How It Works
- When an EC2 node spun up from this AMI, Nexus Repository Manager would be up and running on port 8081 over HTTP.
- Additional configurations such as adding SSL encryption (access over HTTPS), reverse proxy and Docker registry can be set up following the official documentation.
Click on the links below to take you to Amazon Marketplace for spinning up EC2 nodes.
- Nexus Repository Manager AMI for Amazon Linux 2018
- Nexus Repository Manager AMI for Amazon Linux 2
- Nexus Repository Manager AMI for CentOS 7
- Nexus Repository Manager AMI for CentOS 8
- Nexus Repository Manager AMI for Red Hat Enterprise Linux 7
- Nexus Repository Manager AMI for Red Hat Enterprise Linux 8
- Nexus Repository Manager AMI for Fedora 31
- Nexus Repository Manager AMI for Debian 10
- Nexus Repository Manager AMI for Ubuntu 16.04
- Nexus Repository Manager AMI for Ubuntu 18.04
- Nexus Repository Manager AMI for Ubuntu 20.04
- Nexus Repository Manager AMI for openSUSE Leap 15.2
- Nexus Repository Manager AMI for SUSE Linux Enterprise Server 12 SP5
- Nexus Repository Manager AMI for SUSE Linux Enterprise Server 15 SP2
Configuration
- When an EC2 node spun up from this AMI, Nexus Repository Manager would be up and running on port 8081 over HTTP.
- The admin password is stored in
/opt/nexus/sonatype-work/nexus3/admin.password
. SSH into the node and get that password. - Access the user interface using the URL
http://EC2-NODE-IP:8081
. Login asadmin
using the password obtained in the last step. An overview of the interface is available here https://help.sonatype.com/repomanager3/user-interface/user-interface-overview. - Create the needed repositories. Guidelines are available at https://help.sonatype.com/repomanager3/repository-management.
- If the access on port 8081 is not feasible for some reason or if you like to HTTPS support plan to set up a reverse proxy following directions here https://help.sonatype.com/repomanager3/installation/run-behind-a-reverse-proxy. For this you also need point a CNAME, such as repository.mycompany.com, to the instance.
- To configure a private Docker registry follow directions here https://help.sonatype.com/repomanager3/formats/docker-registry.
- To add this instance as the repository server to a CI/CD pipeline you also need to implement a plugin on the build platform, such as
Nexus Platform Plugin
to Jenkins. Details can be found here https://help.sonatype.com/integrations/nexus-and-continuous-integration/nexus-platform-plugin-for-jenkins.
Unsupported Configurations
Kurian releases latest, stable versions of open source software on popular Linux distributions. If you need a configuration that is not currently available in marketplace, send us your requirements to contact@kurianinc.us. Please include the following info in the email:
- Name of Software to be on the AMI with version numbers.
- Linux distribution and the version.
- The EC2 instance type you plan to spin up from the AMI (optional).
Upgrade
Follow Sonatype documentation if you are using this EC2 instance for migrating an old instance of Nexus Repository to it.
Maintenance and Troubleshooting
- The Nexus Repository Manager service is
nexus
, and it can be managed using a standard options available for a Linux service. - The application can be maintained following the official documents.
- Kurian can help with configuring the application for your specific needs using this AMI. Contact us with details to contact@kurianinc.us
Remote Access to EC2 Node
Following are the standard AWS defined users available for SSH when a node is provisioned:
- Amazon Linux: ec2-user
- Red Hat Linux: ec2-user
- SuSE Linux: ec2-user
- Fedora: fedora
- CentOS: centos
- Debian Linux: admin
- Ubuntu: ubuntu
Release history
- 02/13/2021 – Initial release of version 3.29.2 on Debian 10, Ubuntu 16.04/18.04/20.04, Amazon Linux 2018/2, Fedora 31, CentOS 7.9/8.3, RHEL 7.9/8.3, SUSE 12.5/15.2, openSUSE Leap 15.2