FossilRepo

fossilrepo / docs / getting-started / prerequisites.md
Source Blame History 81 lines
2eca4eb… ragelink 1 # Prerequisites
2eca4eb… ragelink 2
2eca4eb… ragelink 3 Before installing fossilrepo, ensure your server meets these requirements.
2eca4eb… ragelink 4
2eca4eb… ragelink 5 ## System Requirements
2eca4eb… ragelink 6
2eca4eb… ragelink 7 | Requirement | Minimum |
2eca4eb… ragelink 8 |---|---|
2eca4eb… ragelink 9 | **OS** | Linux (Ubuntu 22.04+, Debian 12+, RHEL 9+) or macOS 13+ |
2eca4eb… ragelink 10 | **CPU** | 1 vCPU |
2eca4eb… ragelink 11 | **RAM** | 1 GB |
2eca4eb… ragelink 12 | **Disk** | 10 GB (scales with repo count) |
2eca4eb… ragelink 13 | **Python** | 3.12+ |
2eca4eb… ragelink 14
2eca4eb… ragelink 15 ## Required Software
2eca4eb… ragelink 16
2eca4eb… ragelink 17 ### Docker & Docker Compose
2eca4eb… ragelink 18
2eca4eb… ragelink 19 Fossilrepo runs its infrastructure stack via Docker Compose.
2eca4eb… ragelink 20
2eca4eb… ragelink 21 === "Ubuntu/Debian"
2eca4eb… ragelink 22
2eca4eb… ragelink 23 ```bash
2eca4eb… ragelink 24 # Install Docker
2eca4eb… ragelink 25 curl -fsSL https://get.docker.com | sh
2eca4eb… ragelink 26 sudo usermod -aG docker $USER
2eca4eb… ragelink 27
2eca4eb… ragelink 28 # Verify
2eca4eb… ragelink 29 docker compose version
2eca4eb… ragelink 30 ```
2eca4eb… ragelink 31
2eca4eb… ragelink 32 === "macOS"
2eca4eb… ragelink 33
2eca4eb… ragelink 34 ```bash
2eca4eb… ragelink 35 # Install Docker Desktop
2eca4eb… ragelink 36 brew install --cask docker
2eca4eb… ragelink 37
2eca4eb… ragelink 38 # Verify
2eca4eb… ragelink 39 docker compose version
2eca4eb… ragelink 40 ```
2eca4eb… ragelink 41
2eca4eb… ragelink 42 ### Git
2eca4eb… ragelink 43
2eca4eb… ragelink 44 Required for the sync bridge (mirroring to GitHub/GitLab).
2eca4eb… ragelink 45
2eca4eb… ragelink 46 ```bash
2eca4eb… ragelink 47 git --version # 2.30+
2eca4eb… ragelink 48 ```
2eca4eb… ragelink 49
2eca4eb… ragelink 50 ### Make
2eca4eb… ragelink 51
2eca4eb… ragelink 52 Used for running common commands.
2eca4eb… ragelink 53
2eca4eb… ragelink 54 ```bash
2eca4eb… ragelink 55 make --version
2eca4eb… ragelink 56 ```
2eca4eb… ragelink 57
2eca4eb… ragelink 58 ## Optional: S3-Compatible Storage
2eca4eb… ragelink 59
2eca4eb… ragelink 60 For continuous backups via Litestream, you need an S3-compatible bucket:
2eca4eb… ragelink 61
2eca4eb… ragelink 62 - **AWS S3**
2eca4eb… ragelink 63 - **MinIO** (self-hosted)
2eca4eb… ragelink 64 - **Backblaze B2**
2eca4eb… ragelink 65 - **DigitalOcean Spaces**
2eca4eb… ragelink 66
2eca4eb… ragelink 67 !!! info "Local development"
2eca4eb… ragelink 68 S3 is not required for local development. Litestream is disabled by default in the dev Docker Compose configuration.
2eca4eb… ragelink 69
2eca4eb… ragelink 70 ## Ports
2eca4eb… ragelink 71
2eca4eb… ragelink 72 The following ports are used by the stack:
2eca4eb… ragelink 73
2eca4eb… ragelink 74 | Port | Service |
2eca4eb… ragelink 75 |---|---|
2eca4eb… ragelink 76 | `8000` | Django (management UI) |
2eca4eb… ragelink 77 | `443` | Caddy (HTTPS, production) |
2eca4eb… ragelink 78 | `80` | Caddy (HTTP redirect, production) |
2eca4eb… ragelink 79 | `5432` | PostgreSQL |
2eca4eb… ragelink 80 | `6379` | Redis |
2eca4eb… ragelink 81 | `8025` | Mailpit (dev only) |

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button