Pullboard
A work board that lives in your git repo. Agents pick up the next task, another agent checks it, and you barely explain a thing. Local, open source, no account.
rConfig V8 Core is an open-source NCM platform for automated network configuration backups, with backup and restore across multi-vendor environments.
Developer toolsPHP · VueGitHub @rconfigOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
🚀 Modern open source Network Configuration Management (NCM) built with Laravel. Automated backups, configuration compliance, change detection, secure device management, and a fully modernized V8 architecture ready for production.
Taken from the repository README
Loading the full README.
Read the full README ↗rConfig V8 Core is a free and open-source Network Configuration Management (NCM) platform. Back up, manage, and track network configs from one place.
Config Versioning & Diff
Track every config version. See what changed with side-by-side or inline diffs. View the full history for any device.
REST API
Manage devices, configs, templates, tasks, vendors, and more through the REST API. Use API keys for secure access.
Configuration Search
Search all saved configs with one or more terms. Filter by tags, devices, command groups, or commands.
See rConfig in action. Here's the dashboard to get you started:
Full V8Core documentation: https://v8coredocs.rconfig.com/getting-started/
| Feature | 🆓 rConfig Core | 💎 rConfig Professional |
|---|---|---|
| Configuration Backup | ✅ | ✅ |
| Multi-Vendor Support | ✅ | ✅ |
| Unlimited Devices | ✅ | ✅ |
| Config Versioning & Diff | ✅ | ✅ |
| REST API Access (v1 & v2) | ✅ | ✅ |
| Configuration Search | ✅ | ✅ |
| Change Manager & Review Workflow | ❌ | ✅ |
| Enterprise Features | ❌ | ✅ |
| Priority Support | ❌ | ✅ |
| SLA Guarantees | ❌ | ✅ |
Get rConfig v8 Core up and running in minutes!
For Docker installation, please use our dedicated Docker repository:
# install git and docker if you don't have them already
# For CentOS/RHEL/Rocky:
sudo yum install -y git docker docker-compose
sudo systemctl start docker
sudo systemctl enable docker
# For Ubuntu:
sudo apt-get update
sudo apt-get install -y git docker.io docker-compose
sudo systemctl start docker
sudo systemctl enable docker
# Clone the Docker repository
git clone https://github.com/rconfig/rconfig8coredocker.git
cd rconfig8coredocker
## Follow Steps in the official documentation for docker setup: https://v8coredocs.rconfig.com/installation-upgrades/v8-core/docker-setup/
To complete the setup, follow the remaining instructions in the V8 Core Docker documentation: https://v8coredocs.rconfig.com/installation-upgrades/v8-core/docker-setup/
Default credentials:
[email protected]admin⚠️ Important: Change these credentials immediately after first login!
See the Full Installation Guide below.
For a full VM installation, refer to the documentation at https://v8coredocs.rconfig.com/getting-started/installation/ or follow the steps below. Please note, this installation method is more complex and is recommended for experienced users or production environments.
When setting up your VM, we have provided detailed instructions for both CentOS/RHEL/Rocky and Ubuntu. Please follow the steps that correspond to your operating system. and ensure you have the necessary prerequisites installed before proceeding.
💡 Tip: We provide automated setup scripts! Visit v8coredocs.rconfig.com/getting-started/os-configuration/
OS Requirements: System Requirements
Supported OS: Rocky Linux 8/9+ (recommended), CentOS 8/9+, RHEL 8/9+, Ubuntu 22.04+, Alma Linux 8/9+
Required Software: PHP 8.4+, Composer 2.4+, Apache 2.4+, MySQL 5.7+/MariaDB 10.5+, Node.js 14.17+, Git 2.25+, Supervisor 4.2+
# Login to mariadb/mysql
mysql -u root -p
# Create database
CREATE DATABASE rconfig;
# Create user (recommended for Ubuntu 22.04+)
CREATE USER 'rconfig_user'@'localhost' IDENTIFIED BY 'your_secure_password';
GRANT ALL PRIVILEGES ON rconfig.* TO 'rconfig_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
# 1. Navigate to web directory
cd /var/www/html
# 2. Clone the repository
git clone https://github.com/rconfig/rconfig.git
cd rconfig
# 3. Create environment file
cp .env.example .env
# 4. Edit .env with your settings
nano .env
Update these variables in .env:
APP_URL="https://your-server.domain.com"
APP_DIR_PATH=/var/www/html/rconfig
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=rconfig
DB_USERNAME=rconfig_user
DB_PASSWORD=your_secure_password
💡 Best practice: Set
APP_URLto the exact URL users will use to access rConfig. It should also match the ApacheServerNamebelow. rConfig may still work ifAPP_URLis left as a placeholder. However, password reset links and OAuth or SAML callbacks may be wrong.
# 5. Install PHP dependencies
export COMPOSER_ALLOW_SUPERUSER=1
composer self-update --2
yes | composer install --no-dev
# 6. Setup Apache
chmod +x setup_apache.sh
./setup_apache.sh
# 7. Setup Supervisor (run as root). Writes a root owned Horizon config into
# /etc/supervisord.d (RHEL) or /etc/supervisor/conf.d (Ubuntu) that runs
# Horizon as the web user. update.sh re-runs it on every upgrade.
chmod +x setup_supervisor.sh
sudo ./setup_supervisor.sh
# 8. Run the beautiful installation wizard, and answer yes to all prompts 🎨
php artisan v8core:install
🎉 When prompted about the scheduler cron file, type
yesand press Enter. This writes/etc/cron.d/rconfig-core, which runs the scheduler as the web user (never root), and removes any old rConfig V8 Coreschedule:runline from root's crontab and the web user's crontab. If the installer is not running as root it cannot write that file and prints the command instead: runsudo ./setup_cron.shfrom the rConfig folder.
✅ The installer ends by running
php artisan rconfig:check-worker-user, which checks that Horizon, the scheduler and the Supervisor config run nothing as root. It prints one OK, WARN or FAIL line per check. On any FAIL the installer exits non-zero: fix what it lists, then runsudo ./update.sh --no-pull. You can run the check yourself at any time, withsudoto include root's crontab, or with--jsonfor scripts.
# Update Apache virtual host to your server's FQDN
# For CentOS/RHEL:
sudo nano /etc/httpd/conf.d/rconfig-vhost.conf
# For Ubuntu:
sudo nano /etc/apache2/sites-enabled/rconfig-vhost.conf
Update ServerName:
ServerName your-server.domain.com
ServerAlias your-server.domain.com
# Restart Apache
# CentOS/RHEL:
sudo systemctl restart httpd
# Ubuntu:
sudo systemctl restart apache2
# Clear caches, then set ownership. Clear first: run as root, clear-all
# rebuilds the caches as root-owned files, and the chown hands them back.
# CentOS/RHEL:
cd /var/www/html/rconfig
php artisan rconfig:clear-all
chown -R apache:apache storage bootstrap/cache
# Ubuntu:
cd /var/www/html/rconfig
php artisan rconfig:clear-all
chown -R www-data:www-data storage bootstrap/cache
rConfig should be served over HTTPS in any non-trivial environment. Browser session cookies, SAML/OAuth callbacks, and the SPA's same-origin auth all behave best on a properly certified domain.
For step-by-step instructions covering self-signed certificates, Let's Encrypt, and reverse-proxy termination, see the official guide:
👉 SSL Setup Guide → v8coredocs.rconfig.com/auth-security/ssl-setup
After enabling SSL, make sure your APP_URL in .env uses https:// and matches the certificate's hostname.
Open your browser and navigate to: https://your-server.domain.com
Default System Credentials:
[email protected]admin⚠️ Security Notice: Change or remove these credentials immediately after creating a new admin user!
⚠️ Before updating:
- Backup your database
- Backup your
.envfile- Backup your
storagedirectory- Backup your entire server if possible
cd /var/www/html/rconfig
sudo ./update.sh
This one command does the whole upgrade in a safe order: maintenance mode, stop Horizon, git pull, composer install --no-dev, migrate, Supervisor and cron files, caches, file ownership, then start Horizon, restart Apache and bring the app back up. Horizon and the scheduler run as the web user, never root.
/var/log/rconfig-core-update-<date>.log.sudo ./update.sh --no-pull so it does not pull.--skip-redis-secure stops it setting a Redis password. One is set automatically when Redis has none, unless another app's Horizon (such as rConfig Pro) runs on the same server.sudo ./update.sh --no-pull. It is safe to run more than once.php artisan rconfig:check-worker-user. If it fails, the upgrade itself has finished and rConfig is up and running, but something still runs as root or a Supervisor or cron file was changed by hand. The script lists the failed checks: fix them, then run sudo ./update.sh --no-pull.💡 Git conflicts? Run
git stash, thensudo ./update.shagain.
update.sh is not on your server until you pull 8.2.19, so pull once by hand, then let the script do the rest:
cd /var/www/html/rconfig
git pull
sudo ./update.sh --no-pull
Only for upgrading to a release older than 8.2.19, which has no update.sh.
# CentOS/Rocky/RHEL:
cd /var/www/html/rconfig
git pull
composer install
php artisan migrate --force
php artisan rconfig:sync-tasks
systemctl restart httpd
php artisan rconfig:clear-all
php artisan rconfig:set-config-permissions
# Ubuntu:
cd /var/www/html/rconfig
git pull
composer install
php artisan migrate --force
php artisan rconfig:sync-tasks
systemctl restart apache2
php artisan rconfig:clear-all
php artisan rconfig:set-config-permissions
# For CentOS/RHEL/Rocky:
cd /home
yum -y install wget
wget https://dl.rconfig.com/downloads/php-updates/centos-php8-update.sh -O /home/centos-php8-update.sh
chmod +x centos-php8-update.sh
./centos-php8-update.sh
# For Ubuntu:
cd /home
sudo apt-get install wget
wget https://dl.rconfig.com/downloads/php-updates/ubuntu-php8-update.sh -O /home/ubuntu-php8-update.sh
chmod +x ubuntu-php8-update.sh
./ubuntu-php8-update.sh
Contributions make the open-source community amazing! Any contributions you make are greatly appreciated.
We maintain high standards for code quality and style. Contributors should have:
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)develop branch# 1. Create test database
# 2. Copy environment file
cp .env.example .env.testing
# 3. Generate test key
php artisan key:generate --env=testing
# 4. Update .env.testing
# Set APP_ENV=testing
# Update database credentials
# 5. Run tests
php artisan test
# Install dev dependencies
npm install --include=dev
# Start dev server
npm run dev
💡 Network issues with npm? Try:
export NODE_OPTIONS="--dns-result-order=ipv4first"
Check out our YouTube channel for installation walkthroughs and tutorials:
This codebase is distributed under License from rConfig. See LICENSE.txt for more information.
ℹ️ rConfig v8 Professional is excluded from this license and repository.
ℹ️ rConfig v8 Core is provided on a best-effort basis. Response times may vary.
For business-critical environments and guaranteed response times:
👉 Learn more about rConfig Professional
Built with amazing open-source technologies:
See composer.json and package.json for the complete list of dependencies.
Made with ❤️ by the rConfig Team
Website · Documentation · Twitter · GitHub