FerrisGitInstallation
Installation
FerrisGit is deployed as a single container image alongside PostgreSQL. There are three ways to install it: Docker Compose, the Helm chart on Kubernetes, or from source.
Docker Compose
git clone https://github.com/Masmarino/FerrisGit.git
cd FerrisGit
cp .env.example .env
# set POSTGRES_PASSWORD, JWT_SECRET, SETTINGS_ENCRYPTION_KEY and the admin password in .env
docker compose up -d --build
Compose builds the image from the sources. To use the published image instead, replace build: . by image: masmarino/ferrisgit:0.1.3 in docker-compose.yml.
Helm chart
git clone https://github.com/Masmarino/FerrisGit.git
cd FerrisGit
helm upgrade --install ferrisgit ./helm/ferrisgit \
--namespace ferrisgit --create-namespace \
--set image.tag=0.1.3 \
--set ingress.host=git.example.com \
--set-string ferrisgit.trustedProxyCidrs=10.42.0.0/16
kubectl -n ferrisgit rollout status deployment/ferrisgit
Left empty, the chart generates the database password, JWT_SECRET, SETTINGS_ENCRYPTION_KEY and the first administrator's password in the ferrisgit-secrets Secret. The release must be called ferrisgit.
From source
git clone https://github.com/Masmarino/FerrisGit.git
cd FerrisGit
cp .env.example .env # then set real secrets
./scripts/dev.sh # PostgreSQL via Compose, cargo run on :8080, ng serve on :4201
Needs rustup, Node.js 26, Docker with Compose and git on the PATH. The script starts PostgreSQL, applies the migrations and runs the backend on port 8080 and the Angular dev server on port 4201.
Evaluate FerrisGit, then deploy your own instance.
The public instance lets you explore the product. Your own instance keeps your code.