You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

83 lines
2.5 KiB
Markdown

2 years ago
# GITEA DRONE CI DOCKER-COMPOSE DEPLOYEMENT
2 years ago
2 years ago
Stack de déployement de Gitea avec Drone CI pour héberger son code avec des runners pour le CI/CD
2 years ago
2 years ago
[Gitea site](https://gitea.io)
2 years ago
2 years ago
[Drone CI site](https://www.drone.io)
2 years ago
2 years ago
## PRE-REQUIS
2 years ago
2 years ago
- [Docker](https://www.google.com)
- [Docker-compose](https://www.google.com)
2 years ago
2 years ago
## USAGE
2 years ago
2 years ago
Il est conseillé de déployer Gitea et Drone ci sur deux machines distinctes pour éviter d'éventuels conflits réseau.
Déployer Gitea en premier, créer l'utilisateur administrateur et renseigner le nom de domaine
> Il faudrat deux sous domaines (dans cet exemple: git.mondomaine.tld et drone.mondomaine.tld, remplacer mondomaine.tld par votre nom de domaine et créer les configurations serveur adéquates)
Gitea est à servir sur le port 3000 et Drone ci sur le 3001 (modifiable dans le compose si besoin)
2 years ago
2 years ago
### GITEA
2 years ago
2 years ago
- Renseigner le fichier .env avec votre nom de domaine
2 years ago
2 years ago
- deployer gitea:
```bash
cd gitea/
2 years ago
docker-compose up -d
```
2 years ago
2 years ago
- Créer l'utilisateur admin avec son mot de passe
2 years ago
2 years ago
- Dans le profil de l'utilisateur, aller à l'onglet application pour créer l'authentification Oauth2 pour le drone (DRONE_GITEA_CLIENT_ID, DRONE_GITEA_CLIENT_SECRET) et renseigner celles-ci dans le fichier .env
2 years ago
2 years ago
- Renseigner le DRONE_RPC_SECRET (aéatoire, c'est pour authentifier le drone runner et le drone server entre eux)
2 years ago
2 years ago
> Pour utiliser le SSH, s'assurer que le port mappé est ouvert sur la machine hôte
2 years ago
### DRONE CI
2 years ago
2 years ago
- Renseigner le fichier .env avec le bon nom de domaine, le DRONE_RPC_SECRET (aéatoire, c'est pour authentifier le drone runner et le drone server entre eux) ainsi que le nom d'utilisateur et le mot de passe de l'admin créé plus haut
2 years ago
2 years ago
- deployer drone ci:
```bash
cd drone/
2 years ago
docker-compose up -d
```
2 years ago
2 years ago
## CONFIGURATION
2 years ago
2 years ago
- gitea/conf/app.ini
```
# DNS
[server]
DOMAIN = gitea.mondomaine.tld
SSH_DOMAIN = gitea.mondomaine.tld
ROOT_URL = https://gitea.mondomaine.tld/
LANDING_PAGE = explore
# SSO
[service]
DISABLE_REGISTRATION = true
ALLOW_ONLY_EXTERNAL_REGISTRATION = true
[openid]
ENABLE_OPENID_SIGNIN = true
# THEMES
[ui]
THEMES = gitea,arc-green,github,matrix,tangerine-dream,earl-grey
DEFAULT_THEME = gitea
```
2 years ago
> Pour le SSO, aller dans les la partie administration du site sur gitea, onglet source d'authentification et ajouter une source d'authentification (pour keycloak: https://adresse-du-keycloak/auth/realms/gregan/.well-known/openid-configuration)
2 years ago
2 years ago
## TO DO
2 years ago
2 years ago
- [ ] Config all via .env
2 years ago
2 years ago
## CONTRIBUTION
2 years ago
2 years ago
this docker-compose file is based on https://github.com/ruanbekker/drone-gitea-traefik-docker-blogpost