How to setup SonaType Nexus 3 using Docker compose?
Nexus is open source, binary repository manager and Java based tool. It can be installed quickly using Docker with less manual steps.
Watch Steps in YouTube channel:
Pre-requisites:
- Ubuntu EC2 up and running with at least t2.medium(4GB RAM), 2GB will not work
- Port 8081 is opened in security firewall rule
Perform System update
sudo apt-get update
Install Docker
sudo apt-get install docker -y
Install Docker-Compose
sudo apt-get install docker-compose -y
Add current user to Docker group
sudo usermod -aG docker $USER
Compose is a tool for defining and running multi-container Docker applications. With Compose, you use a YAML file to configure your application’s services. Then, with a single command, you create and start all the services from your configuration.
The purpose of docker-compose is to function as docker cli but to issue multiple commands much more quickly. To make use of docker-compose, you need to encode the commands you were running before into a docker-compose.yml file
Run docker-compose up and Compose starts and runs your entire app.
Create docker-compose.yml
this yml has all configuration for installing Nexus on Ubuntu EC2.
sudo vi docker-compose.yml
(Copy the below code high-lighted in yellow color)
version: "3"
services:
nexus:
image: sonatype/nexus3
restart: always
volumes:
- "nexus-data:/sonatype-work"
ports:
- "8081:8081"
volumes:
nexus-data: {}
Save the file by entering :wq!
Now execute the compose file using Docker compose command to start Nexus Container
sudo docker-compose up -d
-d means detached mode
Make sure Nexus 3 is up and running
sudo docker-compose logs --follow
How to get Nexus admin password? sure Nexus 3 is up and running
Once you see the message, that's it. Nexus 3 is been setup successfully. press control C and enter.
Now access Nexus UI by going to browser and enter public dns name with port 8081
Now to go to browser --> http://change to_nexus_publicdns_name:8081
We need to login to docker container to get admin password.
Identify Docker container name
sudo docker ps
Get admin password by executing below command
sudo docker exec -it ubuntu_nexus_1 cat /nexus-data/admin.password
No comments:
Post a Comment