In this tutorial, we'll learn how to install Statping on AlmaLinux 10 server.
In modern server management, uptime transparency is everything. Whether we’re running a web application, API, or internal service, having a status page is a professional way to communicate performance and outages. Instead of relying on third-party tools, we can self-host our own status page using Statping, a lightweight and open-source status monitoring application.
This guide walks through how to install and configure Statping on an AlmaLinux 10 server, ensuring we can monitor services efficiently and present status updates automatically.
What Is Statping?
Statping is an open-source status page application written in Go. It monitors services—like websites, APIs, or databases—and automatically updates a beautiful dashboard showing uptime, latency, and incidents.
It’s ideal for developers, DevOps teams, or anyone managing infrastructure who wants full control without depending on cloud-based tools.
Prerequisites
Before we begin, ensure we have the following:
- An AlmaLinux 10 on dedicated server or KVM VPS.
- Basic Linux Command Line Knowledge.
- A domain name pointing A record to server IP.
How to Install Statping on AlmaLinux 10
Step 1: Update Our Server
Before starting, always ensure the system is clean and updated.
sudo dnf update -y
This updates all packages and ensures we’re using the latest dependencies compatible with AlmaLinux 10.
Step 2: Install Dependencies
# Add repo & install
sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin
# Start docker
sudo systemctl enable --now docker
# Verify
docker version
docker compose version
Step 3: Clone Statping Repository
We’ll now fetch Statping’s official Docker configuration.
cd /opt
sudo git clone https://github.com/statping-ng/statping-ng.git
cd statping-ng
The folder contains all configuration files required to run Statping inside Docker.
Step 4: Launch Statping
Start the container:
sudo docker compose up -d
Verify if it’s running:
sudo docker ps
Note: the status of statping should show Up 5 seconds (health: starting) wait until it become Up About a minute (healthy)
We should see a running container named statping. Once it’s up, access it in the browser:
http://SERVER_IP:8080
Replace SERVER_IP
with our actual public IP address.
Step 5: Configure firewall and SELinux
We need to add HTTP and HTTPS ports in the firewall:
sudo firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --add-port=443/tcp --permanent
Now, let's configure SELinux (If you have enabled SELinux):
sudo setsebool -P httpd_can_network_connect 1
Step 6: Configure Nginx Reverse Proxy (Optional)
To serve Statping under a domain (like status.example.com), we’ll configure an Nginx reverse proxy.
Install Nginx:
sudo dnf install nginx -y
Create Nginx Reverse Proxy Configuration:
sudo nano /etc/nginx/conf.d/statping.conf
Add the following configuration:
server {
listen 80;
server_name status.example.com;
location / {
proxy_pass http://127.0.0.1:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Enable and reload Nginx:
sudo nginx -t
sudo systemctl restart nginx
Now our status page is live under http://status.example.com
.
Step 7: Enable SSL with Let’s Encrypt (Recommended)
To secure our page with HTTPS, install Certbot:
sudo dnf install certbot python3-certbot-nginx -y
Run the SSL setup:
sudo certbot --nginx -d status.example.com
Certbot will automatically configure SSL and redirect HTTP to HTTPS.
Step 8: Access and Customize Dashboard
Open the dashboard in the browser:
https://status.example.com
https://status.example.com/login
Log in using the admin credentials are:
username: admin
password: admin
From here, we can:
- Add services (URLs or endpoints)
- Configure check intervals
- Enable notifications (Slack, Email, Discord)
- Customize branding (logo, theme, favicon)
Step 9: Manage and Update Statping
To view logs:
sudo docker logs -f statping
To stop the service:
sudo docker compose down
To update to the latest version:
cd /opt/statping-ng
sudo git pull
sudo docker compose pull
sudo docker compose up -d
This ensures Statping stays current and secure.
Conclusion
By following these steps, we’ve successfully hosted our own uptime and service status page using Statping on AlmaLinux 10. This setup provides full control, data privacy, and professional visibility for our services—without depending on third-party monitoring tools.
Statping empowers teams to maintain transparency, monitor uptime efficiently, and keep stakeholders informed. Whether we’re managing internal services or client-facing APIs, having a self-hosted status page is a mark of professionalism and reliability.