Self-hosted project management software: how to choose
Cloud services don’t suit everyone: project data can be sensitive, security rules may forbid external services, and access to a foreign cloud can disappear overnight. Then the system goes on your own server. Here is what to judge it by.
1. Data and installation
- Where is the data kept? In your own database or in the system’s internal storage.
- How is it installed? A Docker container and a standard database (PostgreSQL, say) are easier to run than a source install with a hand-built environment.
- Are there Kubernetes manifests, if you run a cluster.
- How are backups and restores done.
- How is it upgraded: database migrations, backward compatibility, release cadence.
2. Sign-on and permissions
- Single sign-on (SSO) through your provider — Keycloak, Active Directory and the like.
- Roles and permissions: who sees which projects, who may change the plan, who only reads.
- An audit log: who changed what and when. Without it, disputes are hard to untangle.
3. Planning
- Work breakdown: how easy it is to edit — like a spreadsheet, or only through forms.
- Gantt chart: dependency types, lead and lag, critical path, baseline.
- A production calendar with your holidays.
- Import of existing plans from Excel or MS Project.
4. Control and portfolio
- Risks and issues next to the plan, not in separate spreadsheets.
- Portfolio: goals, risks and blockers of every project on one page.
- Workload of people across projects.
5. Integrations
- Issue tracker. If teams live in Jira, it matters how the sync works: read-only, or writing too. See “Jira and the project plan”.
- Code repositories, if you need development data.
- API and webhooks for your own reports and automation.
6. Language, support and licence
- Interface language for every user.
- Who supports the system and how fast bugs get fixed.
- Licence: what is allowed — internal use, modification, resale. Open systems such as OpenProject (GNU GPL v3) and Redmine (GNU GPL v2) set this out in the licence itself; others in a contract.
How to test it in practice
- Take a real project and load its plan.
- Live through a week of it: move work, add a risk, record a decision on an issue.
- See what a manager sees: the portfolio, slippage, risks.
- Try installation, a backup and an upgrade on a test server.
Where to see it
Etapero installs on your server as one Docker image and works with PostgreSQL; it comes with Kubernetes manifests, optional Keycloak sign-on, roles and permissions, an audit log, API tokens and webhooks, and connects to Jira and GitLab read-only. You can try it in the demo with no sign-up.
OpenProject and Redmine are mentioned as examples of open systems; the names belong to their owners.