Initial vault setup
This commit is contained in:
@@ -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 : 1–2 Go pour un usage équipe.
|
||||
|
||||
Cas d'usage : équipe dev de 5–50 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
|
||||
Reference in New Issue
Block a user