Files
wiki/Catalogue-Self-Hosted/apps/app-onedev.md
T
2026-06-09 18:40:21 +02:00

5.8 KiB
Raw Blame History


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é)

# 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

# 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

🔗 Pages Liées