Detailed Installation Guide
Step-by-step manual installation for all operating systems
Detailed Installation Guide
This guide provides step-by-step manual installation instructions for all supported operating systems. Use this if the quick installation script doesn’t work for your environment.
System Requirements
Component | Minimum | Recommended |
---|---|---|
RAM | 4GB | 8GB+ |
Storage | 20GB free | 50GB+ |
CPU | 2 cores | 4+ cores |
OS | Ubuntu 20.04, Debian 10, CentOS 8 | Latest LTS versions |
Prerequisites Installation
Ubuntu/Debian Systems
sudo apt update && sudo apt upgrade -y
sudo apt install -y curl wget git make build-essential
Install Docker
# Add Docker's official GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# Add Docker repository
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Install Docker Engine
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
# Add user to docker group
sudo usermod -aG docker $USER
Install Docker Compose
# Download Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# Make executable
sudo chmod +x /usr/local/bin/docker-compose
# Verify installation
docker-compose --version
CentOS/RHEL Systems
# Update system
sudo yum update -y
# Install required packages
sudo yum install -y curl wget git make gcc gcc-c++
# Install Docker
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install -y docker-ce docker-ce-cli containerd.io
# Start and enable Docker
sudo systemctl start docker
sudo systemctl enable docker
sudo usermod -aG docker $USER
macOS Installation
# Install Homebrew if not already installed
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install required packages
brew install git make
# Install Docker Desktop for Mac
# Download from: https://www.docker.com/products/docker-desktop
# Or install via Homebrew Cask:
brew install --cask docker
Windows Installation
For Windows users, we recommend using WSL2 (Windows Subsystem for Linux):
- Enable WSL2:
wsl --install
-
Install Ubuntu from Microsoft Store
- Follow Ubuntu installation steps in the WSL2 environment
rengine Installation
Step 1: Clone Repository
git clone https://github.com/yogeshojha/rengine.git
cd rengine
Step 2: Environment Configuration
cp .env.example .env
Edit the .env
file with your preferred settings:
nano .env
Key configuration options:
# Database settings
POSTGRES_DB=rengine
POSTGRES_USER=rengine
POSTGRES_PASSWORD=your_secure_password
# Django settings
SECRET_KEY=your_secret_key_here
DEBUG=False
# rengine specific settings
DEFAULT_ENABLE_HTTP_CRAWL=True
DEFAULT_ENABLE_AGGRESSIVE_SCAN=False
Step 3: Build and Start Services
make build
make up
Step 4: Initialize Database
make migrate
Step 5: Create Superuser
make superuser
Enter your desired admin credentials when prompted.
Step 6: Load Initial Data
make load-fixtures
Verification
Check Service Status
docker-compose ps
All services should show “Up” status:
Name Command State Ports
----------------------------------------------------------------
rengine_web /app/entrypoint.sh Up 0.0.0.0:8000->8000/tcp
rengine_celery celery -A rengine worker Up
rengine_redis docker-entrypoint.sh redis Up 6379/tcp
rengine_postgres docker-entrypoint.sh postgres Up 5432/tcp
Access Web Interface
- Open browser and navigate to:
http://localhost:8000
- Log in with your superuser credentials
- You should see the rengine dashboard
Test Installation
Run a quick test to ensure everything works:
make test
Troubleshooting
Docker Issues
Docker daemon not running:
sudo systemctl start docker
sudo systemctl enable docker
Permission denied errors:
# Log out and back in after adding user to docker group
# Or use newgrp to refresh group membership
newgrp docker
Build Failures
Out of disk space:
docker system prune -a --volumes
Network issues during build:
make clean
make build --no-cache
Port Conflicts
If port 8000 is already in use:
- Edit
docker-compose.yml
- Change the port mapping:
"8080:8000"
- Restart services:
make restart
Performance Optimization
Memory Optimization
For systems with limited RAM, adjust worker processes:
version: '3.8'
services:
celery:
command: celery -A rengine worker --concurrency=2 --loglevel=info
celery_beat:
command: celery -A rengine beat --loglevel=info
Storage Optimization
Configure log rotation and cleanup:
# Add to crontab
0 2 * * * docker system prune -f
0 3 * * 0 docker volume prune -f
Security Hardening
Change Default Ports
Edit docker-compose.yml
to use non-standard ports:
ports:
- "8443:8000" # Change from default 8000
Enable HTTPS
For production deployments, configure SSL/TLS:
- Obtain SSL certificates
- Configure reverse proxy (nginx/Apache)
- Update
ALLOWED_HOSTS
in Django settings
Next Steps
With rengine successfully installed:
Alternative Installation Methods
- Quick Installation → - Automated script
- VPS Deployment → - Cloud deployment
- Kubernetes → - Container orchestration
Need help? Join our community discussions or check the troubleshooting guide.