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
+119
View File
@@ -0,0 +1,119 @@
---
title: OneDev
created: 2026-06-07
updated: 2026-06-07
type: app
tags: [catalogue, development, forge, ci-cd, kanban]
confidence: high
contested: false
sources: [https://selfh.st/apps/?tag=Development, https://github.com/theonedev/onedev]
---
# 💻 OneDev
> Plateforme DevOps tout-en-un — forge Git + CI/CD + Kanban + package registry + code review, le tout écrit en Java, dans une seule application auto-hébergeable.
## 📋 Informations Générales
| Attribut | Valeur |
|----------|--------|
| **Nom** | OneDev |
| **Slug** | onedev |
| **Description** | Plateforme DevOps intégrée (Git + CI/CD + Kanban + packages + code review) |
| **Site officiel** | https://onedev.io |
| **Repository** | https://github.com/theonedev/onedev |
| **Stars** | 15 030 ⭐ |
| **Licence** | MIT (Community) + Commercial (Entreprise) |
| **Langage principal** | Java |
| **Catégorie** | Development |
| **Tags** | [catalogue, development, forge, ci-cd, kanban] |
## 📝 Description
**OneDev** est une **plateforme DevOps tout-en-un** écrite en Java par l'ingénieur chinois **Robin Shen** (aka `theonedev`). Le positionnement est clair : **remplacer GitLab CE / Gitea + Woodpecker + Wekan** par **une seule application Java auto-hébergeable** qui couvre l'ensemble du cycle dev (Git, CI/CD, kanban, registry de packages, code review, wiki).
Fonctionnalités principales : **forge Git** (clone/pull/serveur SSH Git natif), **CI/CD** (YAML DSL propriétaire, agents K8s/Docker/SSH), **Kanban** intégré (tableaux avec custom fields, automation), **code review** (diff côte-à-côte, suggestions, protected branches), **package registry** (Maven, npm, PyPI, Docker, NuGet, Debian, RPM, Generic, Helm, Go), **wiki** (Markdown, OCR d'images), **issue tracking** (custom workflows, automation), **symbol search** (indexation du code, navigation cross-repo).
**Modèle de licence** : MIT pour la **Community Edition** (toutes les fonctionnalités cœur sont disponibles), avec une **édition commerciale** payante (`OneDev Enterprise`) qui ajoute SSO/SCIM, support prioritaire, et quelques fonctions d'audit avancées. Pour un self-host MIT, on dispose de l'essentiel. RAM requise : 12 Go pour un usage équipe.
Cas d'usage : équipe dev de 550 personnes cherchant une alternative à GitLab CE plus simple à installer (un seul JAR, pas de Kubernetes), plus riche en CI/CD que Gitea, et avec un kanban intégré.
## 🚀 Installation
### Via Docker (recommandé)
```yaml
# docker-compose.yml
version: "3.8"
services:
onedev:
image: 1dev/server:latest
container_name: onedev
restart: unless-stopped
ports:
- "6610:6610" # web UI
- "6611:6611" # SSH Git
volumes:
- ./data:/opt/onedev
- ./backup:/opt/onedev/backup
environment:
- TZ=Europe/Paris
# Optionnel : reverse-proxy devant
```
### Installation manuelle
```bash
# Téléchargement du JAR auto-suffisant (~250 Mo)
wget https://code.onedev.io/onedev/server/~raw/master/release/onedev-X.Y.Z.zip
unzip onedev-*.zip -d /opt/onedev
cd /opt/onedev && sudo ./bin/server.sh start
# Premier accès : http://localhost:6610
# Assistant de bootstrap : créer l'admin, choisir le port SSH, configurer le directory des repos
```
L'application est un **fat JAR** avec base H2 embarquée (peut basculer sur PostgreSQL/MySQL pour la production). Pas de dépendance externe obligatoire.
## ⚙️ Configuration
- **Server URL** : `Administration > System Settings > Server URL` — l'URL publique HTTPS.
- **SSH** : `Server Settings > SSH Port` (6611 par défaut) — expose le daemon SSH intégré pour `git@onedev.example.com:user/repo`.
- **Mail** : configurer SMTP (`System Settings > Email`) — invitations, notifications PR.
- **Agents CI** : `Jobs > Agents` pour enregistrer des agents Kubernetes/Docker/SSH externes (sinon OneDev utilise un runner intégré).
- **Database** : H2 par défaut, basculer sur PostgreSQL via `bin/convert-db.sh` pour les instances >5 Go de données.
- **Backups** : `Administration > Backup` (interface web), backup complet de l'état (repos + base + cache).
## 🔗 Alternatives
- **GitLab CE** — Concurrent direct, plus connu mais beaucoup plus lourd (4 Go RAM minimum) et orienté K8s.
- **Gitea + Woodpecker CI + Wekan** — Stack « tout en briques » équivalente mais à assembler et maintenir.
- **Sourcegraph** — Plus orienté code search / intelligence code, ne couvre pas la CI/CD.
- **Bitbucket / Azure DevOps** — Solutions cloud Atlassian/Microsoft, équivalentes enterprise mais propriétaires.
## 🔒 Sécurité
- **HTTPS obligatoire** : web UI + API — placer un reverse-proxy (Traefik/Caddy) devant.
- **SSH Git** : le port 6611 doit être exposé pour `git@…` — limiter par IP ou via VPN.
- **2FA** : natif (TOTP), à imposer pour tous les comptes admin.
- **Permissions RBAC** : OneDev a un système de permissions fin par projet, à configurer dès la création d'équipe.
- **Mises à jour** : surveiller la page releases, OneDev publie des CVE correctives fréquentes.
- **Sauvegardes** : utiliser le mécanisme intégré (`Backup > Create Backup`) qui capture repos + base + LFS ; tester la restauration régulièrement.
## 📚 Ressources
- [Site officiel](https://onedev.io)
- [Documentation](https://docs.onedev.io)
- [Repository GitHub](https://github.com/theonedev/onedev)
- [Selfh.st — OneDev](https://selfh.st/apps/?tag=Development)
- [OneDev vs GitLab](https://docs.onedev.io/intro/why-onedev/)
## 🔗 Pages Liées
- [[cat-development]] — Catégorie Development
- [[app-gitea]] — Forge Git open source (sans CI/CD intégré par défaut)
- [[app-gogs]] — Forge Git ultra-légère (sans CI/CD)
- [[app-code-server]] — Web IDE à coupler avec OneDev
- [[app-traefik]] — Reverse-proxy HTTPS recommandé
- [[securisation-home-lab]] — Bonnes pratiques
- [[recettes-docker-compose]] — Templates Docker