On-Premise Deployment
Requirements
You will need a server running Ubuntu 24.04 or later with minimum specifications:
4 CPU cores (16 CPU cores recommended)
16GB RAM (64 GB RAM recommended)
128GB storage
30 Mbps internet speed
User with passwordless sudo access (explained in detail below)
Note: The application is resource-intensive. More CPU cores (16+ cores) and especially more RAM (64GB+) are strongly recommended for optimal performance.
Setup Passwordless Sudo Access
Jenkins requires passwordless sudo access to execute deployment and system-level commands automatically, as it runs under a non-interactive service account.
1. Edit the sudoers file safely:
sudo visudo
2. Add this line (replace "username" with your deployment user):
username ALL=(ALL:ALL) NOPASSWD: ALL
3. Save and exit
Jenkins Installation
1. Update Packages
sudo apt update
2. Install Java
sudo apt install openjdk-17-jre -y
3. Add Jenkins Repository Key
curl -fsSL https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key | \
sudo tee /usr/share/keyrings/jenkins-keyring.asc > /dev/null
4. Add Jenkins Repository
echo deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc] \
https://pkg.jenkins.io/debian-stable binary/ | \
sudo tee /etc/apt/sources.list.d/jenkins.list > /dev/null
5. Update Packages with Jenkins Repository
sudo apt update
6. Install Jenkins
sudo apt install jenkins -y
7. Start Jenkins Service
sudo systemctl enable jenkins
sudo systemctl start jenkins
Unistream Configuration
1. Clone Repository
git clone -b main --single-branch --depth 1 \
https://dev.azure.com/datamindge/Unistream/_git/prod
Use "Unistream" as the username and the PAT token provided via email as the password
2. Navigate to Directory
cd prod
3. Run Configuration Script
sudo bash setup-jenkins-config.sh
The script will ask for VM host, sudo user, and password. This information is used for SSH connection. For VM host, specify the IP address of the same machine in the case of single VM deployment.
4. Get Admin Password
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
Jenkins Configuration
Open {Jenkins host}:8080 in your browser
Enter the admin password and complete the registration
Go to Plugins → Available plugins
Find and install the "Publish Over SSH" plugin
Agree to restart after installation
After restart, go to Manage Jenkins → Credentials
Update the "Unistream/****** (Azure DevOps PAT for Jenkins)" credential with the PAT provided via email
Find and run the "full-unistream-deployment" pipeline on the main page
Port Access After Deployment
Administrator Access (Full Access)
Administrators should have access to the following ports:
8123, 5433, 8080, 8081, 8082, 1745, 7070, 6901, 6902, 6903, 6908
Standard User Access
Standard users should have access to the following ports:
8081, 8082, 1745
Help
For questions, please contact the datamind team.
Last updated