navidocs/REMOTE_GITEA_SETUP.md
Danny Stocker 58b344aa31 FINAL: P0 blockers fixed + Joe Trader + ignore binaries
Fixed:
- Price: €800K-€1.5M, Sunseeker added
- Agent 1: Joe Trader persona + actual sale ads research
- Ignored meilisearch binary + data/ (too large for GitHub)
- SESSION_DEBUG_BLOCKERS.md created

Ready for Session 1 launch.

🤖 Generated with Claude Code
2025-11-13 01:29:59 +01:00

433 lines
9.4 KiB
Markdown

# NaviDocs - Remote Gitea Setup Guide
**Date:** 2025-10-24
**Remote Server:** 192.168.1.39
**User:** claude
**Purpose:** Push navidocs repository to remote Gitea instance
---
## Connection Information Extracted
From your MobaXterm configuration:
- **Host:** 192.168.1.39
- **Port:** 22 (SSH)
- **Username:** claude
- **Password:** (encrypted in MobaXterm - you'll need to provide this)
---
## Prerequisites
### 1. Verify Remote Server Accessibility
Test SSH connection:
```bash
ssh claude@192.168.1.39
```
Once connected, verify Gitea is running:
```bash
# Check if Gitea is installed
which gitea
# Check Gitea status (if running as systemd service)
sudo systemctl status gitea
# Check Gitea version
gitea --version
# Check if Gitea web interface is accessible
curl -I http://192.168.1.39:3000 2>/dev/null || curl -I http://192.168.1.39:4000
```
### 2. Identify Gitea Port
Common Gitea ports:
- 3000 (default)
- 4000 (custom)
- 8080 (alternative)
Check which port Gitea is running on:
```bash
sudo netstat -tulpn | grep gitea
# OR
sudo ss -tulpn | grep gitea
```
---
## Option 1: Manual Push (Recommended)
### Step 1: Create Repository on Remote Gitea
**Via Web Interface:**
1. Open browser: `http://192.168.1.39:PORT` (replace PORT with actual Gitea port)
2. Login with your Gitea credentials
3. Click "+" → "New Repository"
4. Repository Name: **navidocs**
5. Visibility: Private (recommended)
6. DO NOT initialize with README (repo already has files)
7. Click "Create Repository"
**Via CLI (if you have admin access):**
```bash
ssh claude@192.168.1.39
# Create repository for user 'claude'
cd /path/to/gitea
./gitea admin repo create \
--owner claude \
--name navidocs \
--private
```
### Step 2: Add Remote to Local Repository
```bash
cd /home/setup/navidocs
# Add remote (replace PORT with actual Gitea port)
git remote add remote-gitea http://192.168.1.39:PORT/claude/navidocs.git
# Verify remote was added
git remote -v
```
### Step 3: Push to Remote Gitea
```bash
cd /home/setup/navidocs
# Push all branches
git push remote-gitea --all
# Push all tags (if any)
git push remote-gitea --tags
```
**Authentication:**
- You'll be prompted for username: `claude`
- You'll be prompted for password: (your Gitea password)
---
## Option 2: SSH Key Authentication (More Secure)
### Step 1: Generate SSH Key (if not already done)
```bash
# Check if you already have an SSH key
ls -la ~/.ssh/id_rsa.pub
# If not, generate one
ssh-keygen -t rsa -b 4096 -C "claude@192.168.1.39" -f ~/.ssh/id_rsa_gitea
```
### Step 2: Copy Public Key to Remote Server
```bash
# Copy public key to remote server
ssh-copy-id -i ~/.ssh/id_rsa_gitea.pub claude@192.168.1.39
# Or manually:
cat ~/.ssh/id_rsa_gitea.pub
# Then paste into Gitea web interface:
# Settings → SSH / GPG Keys → Add Key
```
### Step 3: Add SSH Remote
```bash
cd /home/setup/navidocs
# Add SSH remote (replace PORT with actual Gitea SSH port, usually 22)
git remote add remote-gitea ssh://claude@192.168.1.39:22/claude/navidocs.git
# OR if using custom SSH port (common for Gitea):
git remote add remote-gitea ssh://claude@192.168.1.39:2222/claude/navidocs.git
# Test connection
ssh -T claude@192.168.1.39
```
### Step 4: Push via SSH
```bash
cd /home/setup/navidocs
git push remote-gitea --all
git push remote-gitea --tags
```
---
## Option 3: Automated Script
Save this script as `/home/setup/navidocs/push-to-remote-gitea.sh`:
```bash
#!/bin/bash
# Configuration
REMOTE_HOST="192.168.1.39"
REMOTE_USER="claude"
GITEA_PORT="3000" # Change this to your Gitea port
REPO_NAME="navidocs"
LOCAL_REPO="/home/setup/navidocs"
echo "=================================="
echo "NaviDocs - Remote Gitea Push Script"
echo "=================================="
echo ""
echo "Remote: http://${REMOTE_HOST}:${GITEA_PORT}/${REMOTE_USER}/${REPO_NAME}.git"
echo "Local: ${LOCAL_REPO}"
echo ""
# Navigate to repository
cd "${LOCAL_REPO}" || exit 1
# Check if remote exists
if git remote | grep -q "remote-gitea"; then
echo "✓ Remote 'remote-gitea' already exists"
git remote -v | grep remote-gitea
else
echo "Adding remote 'remote-gitea'..."
git remote add remote-gitea "http://${REMOTE_HOST}:${GITEA_PORT}/${REMOTE_USER}/${REPO_NAME}.git"
echo "✓ Remote added"
fi
echo ""
echo "Checking local repository status..."
git status --short
echo ""
echo "Pushing to remote Gitea..."
echo "(You'll be prompted for username and password)"
echo ""
# Push all branches and tags
git push remote-gitea --all
git push remote-gitea --tags
echo ""
echo "=================================="
echo "✓ Push complete!"
echo "=================================="
echo ""
echo "Verify at: http://${REMOTE_HOST}:${GITEA_PORT}/${REMOTE_USER}/${REPO_NAME}"
```
Make executable and run:
```bash
chmod +x /home/setup/navidocs/push-to-remote-gitea.sh
/home/setup/navidocs/push-to-remote-gitea.sh
```
---
## Troubleshooting
### Issue: "Repository not found"
**Solution:**
1. Ensure you created the repository on remote Gitea first
2. Verify the URL is correct:
```bash
# Test URL accessibility
curl http://192.168.1.39:PORT/claude/navidocs
```
### Issue: "Authentication failed"
**Solution:**
1. Verify username is correct: `claude`
2. Verify password is correct
3. Check if Gitea allows password authentication:
```bash
# In Gitea app.ini, check:
# [service]
# DISABLE_REGISTRATION = false
# REQUIRE_SIGNIN_VIEW = false
```
### Issue: "Connection refused"
**Solution:**
1. Verify Gitea is running:
```bash
ssh claude@192.168.1.39 "sudo systemctl status gitea"
```
2. Check firewall rules:
```bash
ssh claude@192.168.1.39 "sudo ufw status"
```
3. Verify Gitea port:
```bash
ssh claude@192.168.1.39 "sudo netstat -tulpn | grep gitea"
```
### Issue: "Permission denied (publickey)"
**Solution:** Use HTTP authentication or set up SSH keys (see Option 2 above)
---
## Verification Checklist
After pushing, verify:
- [ ] Can access Gitea web interface: `http://192.168.1.39:PORT`
- [ ] Repository is visible in Gitea UI
- [ ] All commits are present (check commit history)
- [ ] All files are present (check file browser)
- [ ] All branches pushed:
```bash
ssh claude@192.168.1.39
cd /path/to/gitea/repos/claude/navidocs.git
git branch -a
```
---
## Current Local Repository Status
```bash
# Check current status
cd /home/setup/navidocs
git status
git log --oneline -5
git branch -a
git remote -v
```
**Expected Output:**
```
origin http://localhost:4000/ggq-admin/navidocs.git (fetch)
origin http://localhost:4000/ggq-admin/navidocs.git (push)
```
---
## What Will Be Pushed
**Repository:** navidocs
**Location:** `/home/setup/navidocs/`
**Size:** ~50 MB (estimate)
**Contents:**
- ✅ Complete source code (client + server)
- ✅ All documentation (33+ markdown files)
- ✅ Test suite (comprehensive testing docs)
- ✅ Security audits (3 reports)
- ✅ Configuration files (.env.example, tailwind.config.js, etc.)
- ✅ Git history (21+ commits)
**Recent Work Included:**
- ✅ LibraryView.vue (new document library UI)
- ✅ Multi-tenancy security audit
- ✅ Disappearing documents bug report
- ✅ Comprehensive test documentation
- ✅ Liliane1 archive analysis
- ✅ Port migration (3000-5500 → 8000-8999)
---
## Quick Start Command
If you know the Gitea port and have created the repository, run:
```bash
cd /home/setup/navidocs
# Add remote (change PORT to your Gitea port, likely 3000 or 4000)
git remote add remote-gitea http://192.168.1.39:PORT/claude/navidocs.git
# Push everything
git push remote-gitea --all
git push remote-gitea --tags
# Verify
echo "✓ Pushed to: http://192.168.1.39:PORT/claude/navidocs"
```
---
## Alternative: Use Existing Local Gitea to Clone/Mirror
If you don't have direct access to create repositories on the remote Gitea, you can:
1. **Use local Gitea to create a bundle:**
```bash
cd /home/setup/navidocs
git bundle create navidocs.bundle --all
```
2. **Transfer bundle to remote server:**
```bash
scp navidocs.bundle claude@192.168.1.39:/tmp/
```
3. **Clone from bundle on remote server:**
```bash
ssh claude@192.168.1.39
cd /path/to/gitea/repos/claude/
git clone /tmp/navidocs.bundle navidocs.git
```
---
## Security Note
**Passwords:**
- The MobaXterm config contains encrypted passwords
- I cannot decrypt these passwords
- You'll need to provide the password when prompted
- Consider using SSH key authentication for better security
**Recommended:**
1. Set up SSH key authentication (Option 2 above)
2. Use Git credential helper to cache credentials:
```bash
git config --global credential.helper cache
# Or store permanently (less secure):
git config --global credential.helper store
```
---
## Next Steps
1. **Determine Gitea Port:**
```bash
ssh claude@192.168.1.39 "sudo netstat -tulpn | grep gitea"
```
2. **Create Repository on Remote Gitea** (via web interface or CLI)
3. **Run Push Command:**
```bash
cd /home/setup/navidocs
git remote add remote-gitea http://192.168.1.39:PORT/claude/navidocs.git
git push remote-gitea --all
```
4. **Verify in Browser:**
```
http://192.168.1.39:PORT/claude/navidocs
```
---
## Support
If you encounter issues:
1. Check SSH connection: `ssh claude@192.168.1.39`
2. Check Gitea status: `sudo systemctl status gitea`
3. Check Gitea logs: `sudo journalctl -u gitea -n 50`
4. Check Gitea port: `sudo netstat -tulpn | grep gitea`
---
**Created:** 2025-10-24
**For:** NaviDocs remote Gitea deployment
**Server:** 192.168.1.39 (claude user)