Initial vault setup

This commit is contained in:
2026-06-09 18:40:21 +02:00
commit bda02d587f
3692 changed files with 402457 additions and 0 deletions
+138
View File
@@ -0,0 +1,138 @@
---
title: Phorge
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, development, collaboration, project-management, code-review]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Development, https://we.phorge.it/]
---
# 💻 Phorge
> Suite de collaboration développeur open source, **fork communautaire de Phabricator** maintenu par la communauté depuis 2021 — hébergement Git, code review, tasks, wiki, le tout dans une plateforme PHP/MySQL mature.
## 📋 Informations Générales
| Attribut | Valeur |
|----------|--------|
| **Nom** | Phorge |
| **Slug** | phorge |
| **Description** | Plateforme de collaboration dev fork de Phabricator |
| **Site officiel** | https://we.phorge.it/ |
| **Repository** | https://we.phorge.it/source/phorge.git |
| **Stars** | 0 ⭐ sur selfh.st (code vit sur Phabricator) |
| **Licence** | Apache 2.0 |
| **Langage** | PHP |
| **Catégorie** | Development |
| **Note** | ✅ **Fork communautaire de Phabricateur** (2021) suite à l'arrêt du support par Phacility. Phorge est gouverné par une communauté ouverte via **we.phorge.it**, et reste **très actif** (releases mensuelles, correctifs de sécurité). |
## 📝 Description
**Phorge** est une **plateforme de collaboration développeur** écrite en PHP, née en 2021 comme **fork communautaire de Phabricator**. Phabricator était développé depuis 2010 par **Evan Priestley** (ex-Facebook) et sa société **Phacility** ; en 2021, Phacility a annoncé la fin du support commercial, poussant la communauté à forker le projet sous le nom **Phorge**.
**Suite applicative complète** : Phorge regroupe une **dizaine d'applications** communiquant entre elles — Differential (code review pré-commit), Diffusion (hébergement Git/Mercurial/SVN), Maniphest (tasks/bugs), Phriction (wiki), Pholio (review de mocks), Ponder (Q&A interne), Calendar, Projects (kanban), Herald (règles d'automatisation), Conduit (API), Legalpad (CLA), Slowvote, Countdown.
**Positionnement unique** : Phorge fait partie des rares plateformes à offrir un **workflow de code review « pre-commit »** natif (les revues se font avant le merge), concept popularisé par Facebook et Google. C'est un choix UX très différent de GitHub/GitLab, mais plébiscité par les équipes qui veulent une revue stricte et tracée. Le **Arcanist (`arc`)** est l'outil CLI compagnon.
**Modèle** : 100% **Apache 2.0**, gouvernance communautaire, **très actif** (releases mensuelles, mainteneurs internationaux). C'est une alternative crédible à GitLab/Gitea/SourceHut pour les organisations qui veulent une plateforme **self-contained** sans assemblage de services.
## 🚀 Installation
### Via Docker (community-maintained)
```yaml
# docker-compose.yml
version: "3.8"
services:
phorge:
image: madhaxbeast/phorge:latest
container_name: phorge
restart: unless-stopped
environment:
- MYSQL_HOST=phorge-db
- MYSQL_USER=phorge
- MYSQL_PASSWORD=CHANGEME
- MYSQL_DATABASE=phorge
- PHORGE_URL=https://phorge.example.com
- PHORGE_TITLE=Mon-Phorge
volumes:
- phorge-data:/var/repo
- phorge-files:/var/phorge
ports:
- "8443:443"
depends_on:
- phorge-db
phorge-db:
image: mysql:8.0
container_name: phorge-db
restart: unless-stopped
environment:
- MYSQL_ROOT_PASSWORD=CHANGEME
- MYSQL_USER=phorge
- MYSQL_PASSWORD=CHANGEME
- MYSQL_DATABASE=phorge
volumes:
- phorge-dbdata:/var/lib/mysql
volumes:
phorge-data:
phorge-files:
phorge-dbdata:
```
### Installation manuelle (LAMP)
```bash
# Dépendances : PHP 8.1+, MySQL 5.7+/8.0, Apache/Nginx, git/mercurial/subversion
git clone https://we.phorge.it/source/phorge.git /var/www/phorge
cd /var/www/phorge
composer install
# Configurer Apache/Nginx, puis visiter https://phorge.example.com
# Créer le premier admin via la CLI :
./bin/phorge user create --admin ...
```
## ⚙️ Configuration
- **`PHORGE_URL`** : URL publique HTTPS — utilisée dans les webhooks, emails, liens de revue.
- **Stockage repositories** : par défaut `/var/repo` (volume Docker) — **backups critiques** avec `rsync` ou `borgbackup` (les repos sont le cœur de la plateforme).
- **UID/GID** : `phorge.user` doit avoir les bons droits sur les volumes.
- **Authentification** : LDAP/AD via **PhabricatorAuth** (legacy mais fonctionnel), ou OAuth/OIDC via [[app-authentik]] / Keycloak.
- **Herald** : règles d'automatisation (auto-assign, notifications) — à configurer post-installation.
- **Backups** : dump MySQL + tarball de `/var/repo` + `/var/phorge` (uploads).
## 🔗 Alternatives
- **Phabricator (upstream)** — L'original, en maintenance. Phorge est le successeur de facto.
- **[[app-gitlab]]** — Forge complète avec CI/CD intégrée, plus moderne UI mais plus lourde.
- **[[app-gitea]] / [[app-forgejo]]** — Forges légères, mais workflow de revue post-commit uniquement.
- **[[app-sourcehut]]** — Suite dev minimaliste SFC, mailing lists natives.
- **Gerrit** — Code review Java pur (Google), très puissant pour les revues pre-commit à grande échelle.
## 🔒 Sécurité
- **HTTPS obligatoire** : Phorge manipule du code et des credentials — **aucun fallback HTTP** en production.
- **Updates fréquentes** : correctifs réguliers, automatiser via Watchtower ou Renovate.
- **SSH pour Git** : Phorge expose un démon SSH — durcir avec `AllowUsers` côté serveur, désactiver l'auth par mot de passe.
- **Authentification** : activer le 2FA natif (TOTP) pour tous les comptes, et coupler avec un OIDC corporate.
- **Audit log** : l'application **Audit** trace toutes les actions sensibles, à consulter régulièrement.
## 📚 Ressources
- [Site officiel Phorge](https://we.phorge.it/)
- [Documentation Phorge](https://we.phorge.it/book/phorge/)
- [Arcanist (CLI)](https://we.phorge.it/book/arcanist/)
- [Historique du fork depuis Phabricator](https://admin.phacility.com/phame/post/view/11/phacility_is_winding_down/)
- [Selfh.st — Development](https://selfh.st/apps/?tag=Development)
## 🔗 Pages Liées
- [[cat-development]] — Catégorie Development
- [[app-gitlab]] — Alternative moderne plus lourde
- [[app-sourcehut]] — Alternative minimaliste SFC
- [[app-traefik]] — Reverse-proxy HTTPS recommandé
- [[securisation-home-lab]] — Bonnes pratiques de sécurité
- [[recettes-docker-compose]] — Templates Docker