StarRocks/starrocks

[Feature Request] Provide official Debian (.deb) and RPM packages for standard installation

Open

#68205 opened on Jan 21, 2026

View on GitHub
 (5 comments) (0 reactions) (2 assignees)Java (5,717 stars) (1,246 forks)batch import
good first issuetype/feature-requestversion:4.2

Description

Feature request

Is your feature request related to a problem? Please describe. Currently, StarRocks is distributed primarily via binary tarballs or Docker images. While this works for testing, it creates friction for bare-metal production deployments and standard Linux administration:

  1. Non-Standard Paths: When using the tarball, logs and configurations reside inside the installation directory (e.g., StarRocks-x.x/fe/log) instead of standard Linux Standard Base (LSB) paths like /var/log/starrocks and /etc/starrocks.
  2. Service Management: There is no native systemd integration out of the box. Administrators have to manually write unit files to manage the fe and be services or use start/stop scripts manually.
  3. Upgrade Complexity: Upgrading requires downloading a new tarball and manually migrating config files, whereas standard packages allow seamless updates via apt-get upgrade or yum update.

Describe the solution you'd like I would like StarRocks to provide official package repositories for major Linux distributions (Debian/Ubuntu and RHEL/CentOS).

Similar to how Apache Cassandra handles installation, we should be able to:

  1. Add a StarRocks repository key and URL.
  2. Run commands like sudo apt-get install starrocks-fe starrocks-be.
  3. Have the package automatically:
    • Place configs in /etc/starrocks/.
    • Place logs in /var/log/starrocks/.
    • Place data in /var/lib/starrocks/.
    • Register and enable systemd services (e.g., systemctl start starrocks-fe).

Describe alternatives you've considered

  • Docker: While Docker is available, it adds an abstraction layer that isn't always desirable for high-performance bare-metal setups where we want direct OS control.
  • Ansible/Chef/Puppet: We currently have to write complex playbooks to download tarballs, move files to /etc/ and /var/, and create custom systemd files to simulate a package installation. This is high maintenance.

Additional context Most enterprise-grade data systems (Cassandra, MySQL, PostgreSQL, ClickHouse) provide native package management support. Adding this would significantly lower the barrier to entry for SysAdmins and DevOps engineers accustomed to standard Linux workflows.

Reference examples:

Contributor guide