4 ms·
It's a really boring setup, I'm unlikely to share anything of much value here. No k8s or anything like that. An Ubuntu LTS virtual machine on top of I don't kn
by 5e92cb50239222b 5y ago
It's a really boring setup, I'm unlikely to share anything of much value here.
No k8s or anything like that. An Ubuntu LTS virtual machine on top of I don't know what hypervisor (probably Hyper-V). Gitea requires very few resources.
Data is stored in PostgreSQL 11. Probably should be upgraded at some point, but it's working fine for now.
A Drone CI instance runs on that same machine. It controls CI workers on a dozen other VMs.
Everything is in Docker containers under docker-compose for two reasons: easy upgrades, and the ability to shove all data into a single directory.
caddy for HTTPS.
Sonatype Nexus for package repositories (caching upstream npm, nuget, maven, composer, and our own internal repos). This one is pretty heavy and will probably be moved to a separate machine at some point.
Never had any issues with any of these in about three years we've been running this setup.
I was a bit facetious with the "zero downtime" statement. It has about 30 seconds of downtime per month, but it is always planned and outside of working hours deep into the night.
There's been zero seconds of unplanned downtime.
Basically you do:
$ docker-compose pull
$ docker-compose up -d
and half a minute later it is running new versions. If anything is broken (it hasn't been yet), call the sysadmin guy, and a few minutes later he restores a VM snapshot.
Backups are being done on the hypervisor's level. I don't know about that much.
- freedomben 5y agocool, thank you!