Diagnostics of your network availability and your uptime service
# 1) Is anything listening on 80/443/8099?
sudo ss -lntp | egrep ':(80|443|8099)\b' || true
# 2) Is nginx up + config valid?
sudo systemctl status nginx --no-pager
sudo nginx -t
sudo journalctl -u nginx -n 200 --no-pager
# 3) Can the uptime app be reached locally (bypassing nginx)?
curl -fsS -m 5 http://127.0.0.1:8099/health || echo "uptime health failed"Running built-in health checks
cd /home/ubuntu/ethora/deploy # adjust if your install path differs
./scripts/health-check.sh(replace "ethora" with your target directory if different)
Checking cloud security group and host firewall
sudo ufw status || true
sudo iptables -S | headChecking docker containers (nginx is up but uptime health fails)
cd /home/ubuntu/ethora/deploy
docker compose -f docker-compose.uptime.yml ps
docker compose -f docker-compose.uptime.yml logs --tail 200 uptimeDiagnosing and resurrecting backend services
Diagnose:
pm2 status || true
pm2 ls || true
journalctl -u pm2-ubuntu -n 200 --no-pager || true
sudo systemctl list-units | grep -i pm2 || trueResurrect:
pm2 resurrect || true
pm2 save || trueMake it survive reboot:
pm2 startup systemd -u ubuntu --hp /home/ubuntu
pm2 save
sudo env PATH=$PATH:/usr/bin pm2 startup systemd -u ubuntu --hp /home/ubuntu
pm2 saveCheck for OOM and disk-full issues
df -h
free -m
journalctl -k -b -1 | egrep -i 'oom|killed process|out of memory' | tail -n 50 || trueCleaning disk space
Diagnose what's using most space:
sudo du -xhd1 / | sort -h
sudo du -xhd1 /var | sort -h
sudo du -xhd1 /var/lib | sort -h
sudo du -sh /var/lib/docker/*Common quick wins:
# Docker (often the biggest)
docker system df
docker image prune -af
docker builder prune -af
# Journald logs
sudo journalctl --vacuum-time=7dSSL / Encrypt certs are missing
Rerun SSL setup script:
cd /home/ubuntu/ethora/deploy
sudo ./scripts/setup-ssl.sh
sudo ./scripts/setup-nginx.sh