This guide will walk you through the steps to deploy a Nexus Repository Manager on an AWS EC2 instance using a Terraform script.
📁 Prerequisites
Make sure you have the following installed:
- Terraform
- AWS CLI
- An AWS account with credentials configured (via
aws configure) - A valid SSH key pair created in your AWS account (needed to access EC2)
📄 Step-by-Step Instructions
1. 🔑 Update Your Key Pair Name
In the aws_instance block, replace:
key_name = "your-ssh-key"with the actual name of your AWS EC2 key pair.
2. 📦 Save the Terraform Code
Save the entire provided Terraform code into a file named main.tf in a directory of your choice.
3. 📂 Initialize Terraform
Open a terminal, navigate to the directory containing [main.tf](https://github.com/Himanshusinghtomar/Sontype-Nexus/blob/main/sontype-nexus-aws-setup.tf), and run:
terraform init4. ✅ Validate the Configuration
Make sure everything is correct:
terraform validate5. 🔍 Preview the Deployment
Check what Terraform is going to create:
terraform plan6. 🚀 Apply the Terraform Plan
Create the resources:
terraform applyType yes when prompted to proceed.
7. 🌐 Access Nexus
Once the infrastructure is deployed, Terraform will output the public IP of the EC2 instance:
nexus_public_ip =You can then open your browser and access Nexus:
http://:8081The default admin password will be available in the instance at:
sudo cat /opt/sonatype-work/nexus3/admin.password🧹 Optional: Destroy the Infrastructure
To delete the resources when you're done:
terraform destroyHappy DevOpsing! 🎉