socktop-webterm/kubernetes/test-registry.sh
jasonwitty 6e48c095ab Initial commit: Socktop WebTerm with k3s deployment
- Multi-architecture Docker image (ARM64 + AMD64)
- Kubernetes manifests for 3-replica deployment
- Traefik ingress configuration
- NGINX Proxy Manager integration
- ConfigMap-based configuration
- Automated build and deployment scripts
- Session monitoring tools
2025-11-28 01:31:33 -08:00

81 lines
2.3 KiB
Bash
Executable File

#!/bin/bash
# Colors
RED='\033[0;31m'
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
BLUE='\033[0;34m'
NC='\033[0m'
echo -e "${BLUE}=== Registry Connectivity Test ===${NC}"
echo ""
REGISTRY="192.168.1.208:3002"
IMAGE="jason/socktop-webterm:0.2.0"
echo "Testing connection to Gitea registry at $REGISTRY"
echo ""
# Test 1: HTTP connectivity
echo -e "${YELLOW}Test 1: HTTP GET to /v2/${NC}"
if curl -f -s -m 5 "http://$REGISTRY/v2/" > /dev/null; then
echo -e "${GREEN}✓ Registry API is accessible${NC}"
else
echo -e "${RED}✗ Cannot access registry API${NC}"
echo "Try: curl -v http://$REGISTRY/v2/"
fi
echo ""
# Test 2: Check if image exists
echo -e "${YELLOW}Test 2: Check if image exists${NC}"
RESPONSE=$(curl -s -o /dev/null -w "%{http_code}" "http://$REGISTRY/v2/$IMAGE/manifests/0.2.0")
if [ "$RESPONSE" = "200" ] || [ "$RESPONSE" = "401" ]; then
echo -e "${GREEN}✓ Image endpoint responds (HTTP $RESPONSE)${NC}"
else
echo -e "${RED}✗ Image not found (HTTP $RESPONSE)${NC}"
fi
echo ""
# Test 3: Check /etc/rancher/k3s/registries.yaml
echo -e "${YELLOW}Test 3: Check registries.yaml${NC}"
if [ -f /etc/rancher/k3s/registries.yaml ]; then
echo -e "${GREEN}✓ registries.yaml exists${NC}"
echo "Content:"
cat /etc/rancher/k3s/registries.yaml
else
echo -e "${RED}✗ registries.yaml not found${NC}"
fi
echo ""
# Test 4: Check k3s service
echo -e "${YELLOW}Test 4: Check k3s service${NC}"
if systemctl is-active --quiet k3s; then
echo -e "${GREEN}✓ k3s service is running${NC}"
elif systemctl is-active --quiet k3s-agent; then
echo -e "${GREEN}✓ k3s-agent service is running${NC}"
else
echo -e "${RED}✗ k3s service is not running${NC}"
fi
echo ""
# Test 5: Try docker pull (if docker is installed)
echo -e "${YELLOW}Test 5: Try docker pull${NC}"
if command -v docker &> /dev/null; then
echo "Attempting docker pull (timeout 10s)..."
timeout 10 docker pull "$REGISTRY/$IMAGE" 2>&1 | tail -5
else
echo "Docker not installed, skipping"
fi
echo ""
echo -e "${BLUE}=== Recommendations ===${NC}"
echo ""
echo "If registry.yaml exists but pull hangs:"
echo " 1. Restart k3s: sudo systemctl restart k3s"
echo " 2. Check k3s logs: sudo journalctl -u k3s -n 50"
echo ""
echo "If image endpoint returns 401:"
echo " - This is normal - registry requires auth"
echo " - k3s should handle this automatically"
echo ""