Official Docker deployment for rConfig v8 Core - Open Source Network Configuration Management.
Get rConfig running in 5 minutes:
# 1. Clone this repository
git clone https://github.com/rconfig/rconfig8coredocker.git
cd rconfig8coredocker
# 2. Create environment file
cp .env.example .env
vi .env # Edit with your settings
# 3. Build and start
docker compose build
docker compose up -d
# 4. Install rConfig
docker compose exec app php artisan v8core:install
# 5. Access rConfig
# http://localhost:8080
# Login: admin@domain.com / admin- PHP 8.4 with all required extensions
- Apache 2.4 pre-configured for Laravel
- MariaDB 10.11 database server
- Redis for queues and caching
- Laravel Horizon queue management with dashboard
- Supervisor managing all services automatically
- Docker Engine 20.10+
- Docker Compose 2.0+
- Git
- 2GB RAM minimum
- Port 8080 available
git clone https://github.com/rconfig/rconfig8coredocker.git
cd rconfig8coredockercp .env.example .env
vi .envRequired settings:
APP_URL=http://your-server-ip:8080
APP_DIR_PATH=/var/www/html/rconfig
DB_HOST=db
DB_PORT=3306
DB_DATABASE=rconfig
DB_USERNAME=rconfig_user
DB_PASSWORD=your_secure_password
docker compose build
docker compose up -ddocker compose exec app php artisan v8core:installhttp://localhost:8080
Default Login:
- Email:
admin@domain.com - Password:
admin
π Change immediately after first login!
docker compose exec app supervisorctl statusAll services should show RUNNING.
If you see an application setup screen or first-run errors, complete install:
docker compose exec app php artisan v8core:install- Login with default credentials
- Go to Settings β Users
- Update email and password
docker compose logs -f app
docker compose exec app tail -f /var/www/html/rconfig/storage/logs/laravel.logdocker compose exec app php artisan [command]docker compose restart appchmod +x update.sh
./update.shdocker compose down
docker compose build --no-cache
docker compose up -d
docker compose exec app php artisan migrate --force
docker compose exec app php artisan rconfig:clear-all# Backup database
docker compose exec -T db mysqldump -u root -p${MYSQL_ROOT_PASSWORD} ${DB_DATABASE} > backup-$(date +%Y%m%d).sqldocker compose stop app
docker compose exec -T db mysql -u root -p${MYSQL_ROOT_PASSWORD} ${DB_DATABASE} < backup.sql
docker compose start appdocker compose exec app chown -R www-data:www-data /var/www/html/rconfig/storage
docker compose exec app chmod -R 775 /var/www/html/rconfig/storage
docker compose exec app php artisan rconfig:clear-alldocker compose ps db # Check database is healthy
sleep 30 && docker compose restart app # Wait and restartdocker compose exec app php artisan horizon:status
docker compose exec app supervisorctl restart horizonSymptoms: unix:///var/run/supervisor.sock no such file
docker compose exec app supervisorctl status
docker compose exec app ls -l /var/run/supervisor/supervisor.sockIf the socket is missing, rebuild so the updated supervisor config is used:
docker compose up -d --buildSymptoms: bind: Address already in use for port 6379
Redis must only be managed by one process. This image uses Supervisor as the single process owner for Redis.
Symptoms: "No application encryption key has been specified"
docker compose exec app php artisan key:generate --force
docker compose restart appSymptoms: "Key file permissions are not correct"
docker compose exec app bash -c "chmod 600 /var/www/html/rconfig/storage/oauth-*.key && chown www-data:www-data /var/www/html/rconfig/storage/oauth-*.key"
docker compose restart app- β Change all default passwords
- β
Set
APP_DEBUG=false - β Use strong passwords
- β Enable firewall
- β Set up SSL/TLS
- β Regular backups
Edit .env:
APP_PORT=9090Restart:
docker compose down && docker compose up -d- Main Repo: github.com/rconfig/rconfig
- Docs: v8coredocs.rconfig.com
- Support: github.com/rconfig/rconfig/issues
- YouTube: youtube.com/rconfigv8Core
Q: Do I need to clone the main rconfig repo?
A: No! Dockerfile clones it automatically.
Q: Can I run multiple instances?
A: Yes! Use different directories and ports.
Q: How to enable debug mode?
# Edit .env: APP_DEBUG=true
docker compose down && docker compose up -d
docker compose exec app php artisan config:clearQ: External database?
A: Remove db service from docker-compose.yml, update .env.
Pull requests welcome! Please test thoroughly before submitting.
Follows rConfig v8 Core license.
Made with β€οΈ for the rConfig community
β Star us on GitHub if this helped you!
Symptoms: "No application encryption key has been specified"
Fix:
docker compose exec app php artisan key:generate --force
docker compose restart appNote: The entrypoint automatically generates this on first start, but if you encounter this error, run the command above.