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

Start the stack with 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.

Installation guide (in French)

Helm chart

Install the chart on Kubernetes
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.

Deploying on Kubernetes (in French)

From source

Run the backend and the web application locally
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.

Installation guide (in French)

Evaluate FerrisGit, then deploy your own instance.

The public instance lets you explore the product. Your own instance keeps your code.