Files
NexusV7/raws/blog/2020-03-03_migrationGitea.md
2021-03-28 15:54:59 +02:00

1.9 KiB
Raw Blame History

title, description, date, yearonly, url
title description date yearonly url
Migration gitea vers docker gitea docker 2020-03-03 false migration-gitea-docker.html

Introduction

Lors de la grande migration vers Docker, une étape majeure était linstance gitea. Javais déja une installation faite du 'binary' gitea et dun service Linux.

Gitea fourni une explication 'Backup and Restore' dans la documentation officielle.

La marche à suivre

Première étape : Exporter linstallation actuelle.

su git

./gitea dump -c /etc/gitea/app.ini

Il faut prendre soin de fournir une copie du binary 'gitea' a lutilisateur git. En le copiant dans son dossier home avec un chown par exemple. Quitter lutilisateur avec 'exit', récupérer larchive obtenue et lextraire.

Seconde étape : Docker

Créé et lancer son conteneur gitea. Je le fais à partir dun docker-compose.yml que lon trouve dans la documentation officielle, dans la section 'installation With Docker'.

Ne pas oublier darrêter le service existant de gitea pour éviter les conflits de ports.

Une fois le conteneur lancé, il faut configurer linstance et terminer linstallation pour obtenir la configuration nécessaire. En particulier la base de données et les repositories.

Troisième étape : Migration

Depuis le dossier de larchive 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 dattribuer les bons droits aux dossiers copiés.

chown -R user:user repositories/

'user' étant lutilisateur 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 cest tout. Si tout sest bien passé, on peut se connecter a son instance gitea comme dhabitude et retrouver tous ses repo abandonnés.