status.sh (3001B)
1 #!/bin/bash 2 # Comprehensive status checker for chat application 3 4 echo "=== CHAT APPLICATION STATUS ===" 5 echo "Date: $(date)" 6 echo "" 7 8 echo "=== CONTAINER STATUS ===" 9 docker-compose ps 10 echo "" 11 12 echo "=== .ONION ADDRESSES ===" 13 for container in chatterbox shitchat2 shitchat3; do 14 CONTAINER_ID=$(docker exec $container hostname 2>/dev/null) 15 if [ -n "$CONTAINER_ID" ]; then 16 HOSTNAME=$(docker exec $container cat /var/www/html/hostname_${CONTAINER_ID}.txt 2>/dev/null) 17 if [ -n "$HOSTNAME" ] && [ "$HOSTNAME" != "Failed to generate hostname" ]; then 18 echo "✅ $container: $HOSTNAME" 19 else 20 echo "❌ $container: No valid hostname found" 21 fi 22 else 23 echo "❌ $container: Container not accessible" 24 fi 25 done 26 echo "" 27 28 echo "=== TOR PROCESS STATUS ===" 29 for container in chatterbox shitchat2 shitchat3; do 30 echo "Checking $container..." 31 TOR_PROCESSES=$(docker exec $container ps aux | grep tor | grep -v grep | wc -l) 32 if [ "$TOR_PROCESSES" -gt 0 ]; then 33 echo " ✅ Tor is running ($TOR_PROCESSES processes)" 34 docker exec $container ps aux | grep tor | grep -v grep | head -1 35 else 36 echo " ❌ Tor is not running" 37 fi 38 done 39 echo "" 40 41 echo "=== HOSTNAME FILES STATUS ===" 42 echo "Local hostname files:" 43 ls -la hostnames/*.onion 2>/dev/null || echo " No local hostname files found" 44 echo "" 45 echo "Container hostname files:" 46 for container in chatterbox shitchat2 shitchat3; do 47 CONTAINER_ID=$(docker exec $container hostname 2>/dev/null) 48 if [ -n "$CONTAINER_ID" ]; then 49 FILE_EXISTS=$(docker exec $container test -f /var/www/html/hostname_${CONTAINER_ID}.txt && echo "✅" || echo "❌") 50 echo " $container (${CONTAINER_ID}): hostname_${CONTAINER_ID}.txt $FILE_EXISTS" 51 fi 52 done 53 echo "" 54 55 echo "=== SQLITE DATABASE STATUS ===" 56 for container in chatterbox shitchat2 shitchat3 chatterbox_php; do 57 DB_EXISTS=$(docker exec $container test -f /var/lib/sqlite/chat*.sqlite && echo "✅" || echo "❌") 58 DB_COUNT=$(docker exec $container ls -1 /var/lib/sqlite/*.sqlite 2>/dev/null | wc -l) 59 echo " $container: SQLite databases $DB_EXISTS ($DB_COUNT files)" 60 done 61 echo "" 62 63 echo "=== PERMISSION STATUS ===" 64 echo "Hostname directory permissions:" 65 ls -la hostnames/ 2>/dev/null | head -5 || echo " No hostnames directory" 66 echo "" 67 echo "Key files in containers:" 68 for container in chatterbox shitchat2 shitchat3; do 69 echo " $container:" 70 docker exec $container ls -la /var/lib/tor/hidden_service/hostname 2>/dev/null || echo " No hostname file" 71 docker exec $container ls -la /var/lib/sqlite/ 2>/dev/null | head -2 || echo " No SQLite directory" 72 done 73 74 echo "" 75 echo "=== QUICK ACCESS ===" 76 echo "Available scripts:" 77 echo " bash extract-hostnames.sh - Extract all .onion addresses" 78 echo " bash fix-permissions.sh - Fix all file permissions" 79 echo " bash check-tor.sh - Check Tor status (legacy)" 80 echo " bash status.sh - This status report"