Git server: Pagure

Been looking at a few git-services, and will prob go with GitLab or Gitea, or maybe just a plain simple Cgit. But, when doing a few rpm’s for myself now, I ran into this Pagure - which looks really nice and interesting. Both src.fedoraproject.org and git.centos.org are using it. I kind of like the structure and layout of the repos, and it seems to be litght-weight.

So, when tringing to read all the docs they have… I can’t find any page with recommended system requirements. Like GitLab have a page that says you should have N amount of RAM, CPU with N cores, etc. And Gitea that says it can be run on a RPi.

Anyone here who have tried Pagure? and knows what kind of minimum hardware that’s required? That would be really helpful.

· Eric

I’ve no experience of Pagure, but reading this: https://docs.pagure.org/pagure/install.html does mention that for production use to use a database like PostgreSQL or MariaDB. In this case, you’d most likely be looking at about 2 - 4GB ram. On the page you linked, it also mentions using Redis, so again that’s going to increase the memory requirements. At this point, I cannot see it being much different to Gitlab.

I use Gitlab mostly, and the requirements there start at 4GB ram. I also like the web interface - I tend to go for things that are aesthetically pleasing than something looking a bit basic, but that’s just me :slight_smile:

Note, you can run Gitlab on a Raspberry PI also. I have done this, but it’s ideal at this point to disable stuff like Prometheus, Grafana. Gitlab do have docs on other stuff you can change to limit CPU/RAM usage for a Raspberry PI setup.

1 Like

Thanks! :+1:

Yes, that’s true… It’ll prob be about same. Though, I think MariaDB can be tweaked/tuned a bit. The install I have/had on my Mac didn’t eat too much RAM. GitLab ditched MySQL and MariaDB and is all Postgres now - maybe that one needs more RAM?

Now, I don’t think the RAM will be the issue. The 2 machines I have in mind to run it on - both have 8+GB. One is a HP t610, and the other one a HP Microserver (gen 7) N54L. Both have only dual-core CPU’s. So, I guess that’s the other part of my concern (ie. if it will hold up). But, if GitLab says 4-cores for ~500 users, and 8 cores for ~1000. Maybe a dual-core setup could work for < 50 users?


Redis… Not sure, but I think that one is optional: https://docs.pagure.org/pagure/configuration.html. At least they mention it for the use with “web-hooks” - which I assume is like if you’re using a 3rd party registration service (like Fedora does with their Fedora accounts). It’s not in the first “must” options anyway.

 

Same here. I like the GitLab-look better. But, I kind of liked the layout/structure of the pages/repos, and how you can have the documentation at hand without moving to a separate wiki-repo.

No, designwise (UX), it’s not that aesthetic. But, I think they have a few themes to choose from, and of course one can always make a custom theme. Can’t be too hard to add some GitLab('ish) look to it.

/* Even Gitweb can look good with a few xtra lines of CSS. :slight_smile: */

I think 2 core would be fine without prometheus and grafana enabled in Gitlab plus a few tweaks from the raspberry docs. So it is doable.

Aah, so they have a tweaking guide. That would be a good read regardless. Thanks anyway - I’ll look into that prometheus/grafana. :+1:

One should prob install both. 1 on each machine, and do some basic A/B testing. Or get some other hardware, since I do have plans for those two.

Hi,

i have found in configuration that pagure can use sqlite too. So i think this a way save ram(in past i have setup sqlite based homepages on my rpi2 server which have very limited resources).
https://docs.pagure.org/pagure/configuration.html

Yes, for testing or perhaps small home server with one user. For production environment, bad idea. Database should be used, if it’s being used for serious work, so postgres or mariadb or whatever proper DB options are available.

1 Like

Yes, there is the sqlite option (even defaults to sqlite), just like Gitea also have that. But, like @iwalker said - it’s not suited for production (ie. live environment).

Pagure also brings that up in the #set-up-pagure page/section:

Warning: Pagure’s default configuration is using sqlite. This is fine for development purpose but not for production use as sqlite does not support all the operations needed when updating the database schema. Do use PostgreSQL, MySQL or MariaDB in production.

Yes you are both right. The sqlite variant is only for small setups, but if you want to build bigger setups i think the best way is to upgrade your ram.