selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
GumCP logo

Self-host GumCP

2.8.0

Lightweight Raspberry Pi web control panel and dashboard

ReleaseOpen SourceMIT
Updated10 hours ago
LanguagePHP
Setup difficultyModerate
Stars
170
CPU
Raspberry Pi 1 or newer
Requires
PHP, Php-curl, Php-sqlite3, Php-ssh2, Php-zip, SSH server, Sudo
Install with Linux
GumCP dashboard showing live CPU, memory, temperature, network and service status

What is GumCP?

GumCP is a lightweight web control panel designed for Raspberry Pi devices. It operates on Apache with PHP and delivers a browser-based dashboard displaying real-time system metrics. Users can control GPIO pins, manage system services and processes, execute shell commands via SSH, and build custom buttons that run commands. An optional HTTP API enables automation tools to activate those buttons without authentication. The panel also provides a script editor with syntax highlighting, package update handling, system log viewing, cron job management, and a built-in diagnostic checker. Several authentication methods are available: a login page, HTTP Basic Auth, or verification against the actual system account through SSH. The interface supports multiple languages. Setup works on any Raspberry Pi from the first generation through Pi 5 using either a one-line installer script or a manual Apache/PHP installation.

Should you self-host GumCP?

GumCP scores 47/100 on selfhost.directory (how scoring works) and ranks #19 of 27 in Server Management. It has 170 GitHub stars.

It shipped 15 stable releases in the past year. The latest, 2.8.0, came out on 28 August 2026. New versions land roughly every 1 days.

Setup is moderate: expect some configuration beyond a single command. It is MIT-licensed and written mostly in PHP.

Its closest alternative on selfhost.directory is 1panel (79/100, 37 298 stars). It scores higher overall, so compare the two before you pick. See GumCP vs 1panel side by side.

Features

  • Button HTTP APIOff by default; enable in config.php
  • Command Buttons
  • Cron Job Management
  • Docker ManagementDisabled by default; enable in config.php if you run Docker
  • GPIO Control
  • Package Updates
  • Process management
  • Raspberry Pi Tools
  • Service Management
  • SSH Command Execution
  • System Check
  • System Dashboard
  • System Logs Viewer
  • Users & Groups

GumCP README

How to install GumCP

Install GumCP with Linux

Raspberry Pi OS, internet access

sudo apt-get update && sudo apt-get install -y wget wget https://raw.githubusercontent.com/gumslone/GumCP/master/installer.sh && bash ./installer.sh

Automatically installs Apache, PHP, required extensions, GPIO tools, clones GumCP, creates config and directories, sets permissions

How to configure GumCP

  • BASIC_AUTHfalseEnable HTTP Basic Auth

    Enable HTTP Basic Auth

    values: true, false

  • BASIC_AUTH_PASSsecretBasic Auth password

    Basic Auth password

  • BASIC_AUTH_USERapiBasic Auth username

    Basic Auth username

  • GUMCP_ALLOW_UNAUTHENTICATEDfalseDisable all authentication (dangerous)

    Disable all authentication (dangerous)

    values: true, false

  • gumcp_dashboard_services['ssh', 'apache2', 'cron']Services shown as status badges on dashboard

    Services shown as status badges on dashboard

    values: systemd unit names

  • GUMCP_DEBUGfalseDisplay PHP errors in browser

    Display PHP errors in browser

    values: true, false

  • GUMCP_LANGenDefault UI language

    Default UI language

    values: en, de, uk, es, fr

  • gumcp_modulessee config.example.phpModule activation and configuration

    Module activation and configuration

  • GUMCP_UPDATE_KEYEmergency update recovery key

    Emergency update recovery key

  • LOGIN_CHECK_SYSTEM_USERfalseVerify login against real system account via SSH

    Verify login against real system account via SSH

    values: true, false

  • LOGIN_FAILURE_WINDOW900Login failure window in seconds

    Login failure window in seconds

  • LOGIN_LOCKOUT_TIME900Lockout duration in seconds

    Lockout duration in seconds

  • LOGIN_MAX_FAILURES5Max login failures before lockout

    Max login failures before lockout

  • LOGIN_PASSraspberryWeb login password

    Web login password

  • LOGIN_REQUIREDtrueEnable login page authentication

    Enable login page authentication

    values: true, false

  • LOGIN_USERpiWeb login username

    Web login username

  • SESSION_ABSOLUTE_TIMEOUT43200Session absolute timeout in seconds

    Session absolute timeout in seconds

  • SESSION_IDLE_TIMEOUT3600Session idle timeout in seconds

    Session idle timeout in seconds

  • SSH_PASSraspberrySSH password

    SSH password

  • SSH_PORT22SSH port (default: 22)

    SSH port (default: 22)

  • SSH_USERpiSSH username

    SSH username

GumCP releases & version history

FAQ

Can I trigger commands from Home Assistant or scripts?

Yes — every command button has a secret HTTP API URL you can call from Home Assistant, curl, or any automation tool.

Can I monitor my Raspberry Pi remotely from a browser?

Yes. The dashboard shows live CPU, memory, swap, disk, temperature, throttling and per-interface network stats, auto-refreshing without a page reload. Protect remote access with the built-in login page or HTTP Basic Auth.

Which Raspberry Pi models are supported?

All models — Pi 1, 2, 3, 4 and Pi 5. GPIO uses WiringPi on Pi 1–4 and raspi-gpio on Pi 5 automatically.

Is GumCP a Webmin or Cockpit alternative for Raspberry Pi?

Yes, it's a lightweight, single-purpose web control panel focused on Raspberry Pi: system monitoring, GPIO, services, processes and one-click command buttons. It installs in minutes on Raspberry Pi OS with no database required.

More in IoT

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…