51 lines
1.9 KiB
Markdown
51 lines
1.9 KiB
Markdown
---
|
||
title: Migration gitea vers docker
|
||
description: gitea docker
|
||
date: 2020-03-03
|
||
yearonly: false
|
||
url: migration-gitea-docker.html
|
||
---
|
||
|
||
# Introduction
|
||
Lors de la grande migration vers Docker, une étape majeure était l’instance gitea. J’avais déja une installation faite du 'binary' gitea et d’un service Linux.
|
||
|
||
Gitea fourni une explication 'Backup and Restore' dans la documentation officielle.
|
||
|
||
# La marche à suivre
|
||
## Première étape : Exporter l’installation actuelle.
|
||
> su git
|
||
|
||
> ./gitea dump -c /etc/gitea/app.ini
|
||
|
||
Il faut prendre soin de fournir une copie du binary 'gitea' a l’utilisateur git. En le copiant dans son dossier home avec un chown par exemple.
|
||
Quitter l’utilisateur avec 'exit', récupérer l’archive obtenue et l’extraire.
|
||
|
||
## Seconde étape : Docker
|
||
Créé et lancer son conteneur gitea. Je le fais à partir d’un docker-compose.yml que l’on trouve dans la documentation officielle, dans la section 'installation With Docker'.
|
||
|
||
Ne pas oublier d’arrêter le service existant de gitea pour éviter les conflits de ports.
|
||
|
||
Une fois le conteneur lancé, il faut configurer l’instance et terminer l’installation pour obtenir la configuration nécessaire. En particulier la base de données et les repositories.
|
||
|
||
## Troisième étape : Migration
|
||
Depuis le dossier de l’archive extraite, copier les repositories.
|
||
|
||
> mv gitea-repositories/* /data/gitea_data/git/repositories/
|
||
|
||
La destination '/data/gitea_data/' dépend de la configuration des volumes du conteneur.
|
||
|
||
Ne pas oublier d’attribuer les bons droits aux dossiers copiés.
|
||
|
||
> chown -R user:user repositories/
|
||
|
||
'user' étant l’utilisateur attribuer a Docker.
|
||
|
||
Ensuite faire la migration de la base de données :
|
||
|
||
> sqlite3 /data/gitea_data/gitea/gitea.db < gitea-db.sql
|
||
|
||
La commande dépend de la base de données utilisée.
|
||
|
||
|
||
|
||
Et c’est tout. Si tout s’est bien passé, on peut se connecter a son instance gitea comme d’habitude et retrouver tous ses repo abandonnés. |