Docker Compose implementation of Gitlab to Forgejo migration script.
This zero-effort Docker project can easily be run within the host machine.
The migration script supports migration of:
- Repositories & Wiki (fork status is lost)
- Users (no profile pictures)
- Groups
- Public SSH keys
The script supports at least:
- Gitlab Version 17.2.1
- Forgejo Version 13 (current)
The script relies on pyforgejo version 1.x. This requirement is fixed during build.
Create your own version of .migrate.ini, using a permissive user and token for both Gitlab and Forgejo.
cp .migrate.ini.dist .migrate.iniWhen running the container from within the host itself, and you're behind a local domain, add the correct DNS configuration within the compose override.
cp docker-compose.override.yml.dist docker-compose.override.ymldocker compose run --rm migrate --help
# Migrate all types
docker compose run --rm migrate --allTo run an alternate script, change the entrypoint, e.g.:
docker compose run --rm --entrypoint python3 migrate create_push_mirrors.py --help