Install once. Use it everywhere.
ProductOwner runs on your own server. Install it with one command, then your team opens it in the browser or in the desktop and phone apps.
Up and running in about 5 minutes
One command installs everything: the app, its database, the video server and HTTPS. Every new install is a 14-day free trial.
Install Docker
Linux: run the line below. Windows or Mac: install Docker Desktop and start it (on Windows, use Git Bash for the next step).
$ curl -fsSL https://get.docker.com | shRun the installer
In the folder where you want ProductOwner. It sets everything up by itself.
$ curl -fsSL https://raw.githubusercontent.com/lotfy2125/productowner-install/main/get.sh | bashOpen the address it shows
For example:
ProductOwner's address on this network: https://productowner.local (or https://192.168.1.20)The browser warns once ("not private") because this is ProductOwner's own certificate: click Advanced → Proceed.
Create the admin account and invite your team
The first person to open it becomes the admin. Invite people from Settings → Team; they just open the link in their browser.
Get a server and a name
A small cloud server (Ubuntu or Debian) and a DNS name pointing at it, e.g.
productowner.acme.com.Install Docker on the server
$ curl -fsSL https://get.docker.com | shRun the installer with your name
Real HTTPS certificates come from Let's Encrypt by themselves.
$ curl -fsSL https://raw.githubusercontent.com/lotfy2125/productowner-install/main/get.sh | bash -s -- --domain productowner.acme.com --email it@acme.comOpen your address
https://productowner.acme.com, from anywhere, no warnings.
Download the files on a computer with internet
From the latest release:
productowner-install.tar.gzandproductowner-image-…-amd64.tar.gz.Copy them to the server and unpack
$ tar xzf productowner-install.tar.gz && cd productownerInstall from the image file
$ ./install.sh --image-file ../productowner-image-*-amd64.tar.gz
Pick how each person works
Everyone connects to your server: in the browser, or in an app that adds notifications, offline work and a home on their dock or phone.
Web
Chrome, Edge, Firefox, Safari
Nothing to install: open your server's address and sign in with your invitation. Works on computers, tablets and phones, and can be added to the home screen.
Desktop
Windows · macOS · Linux
Its own window and tray icon, system notifications, links that open the app, and automatic updates.
Windows: setup.exe or .msi · macOS: .dmg (Apple silicon or Intel) · Linux: .AppImage or .deb
Phone Coming soon
iPhone · Android
Push notifications, scan your server's QR code to connect, sign in with your company account, and keep working offline.
Coming from Jira or Azure DevOps?
Bring your work with you
After installing, open Settings → Import to bring stories, people and history across. Keep using GitHub or GitLab for your code.
What you need
| Server | Linux (Ubuntu 22.04/24.04, Debian 12), or Windows / macOS with Docker Desktop. Intel/AMD or ARM. |
|---|---|
| Size | 2 CPUs and 4 GB memory for up to ~50 people; 4 CPUs and 8 GB with regular meetings. |
| Disk | 40 GB to start. Meeting recordings use about 0.5 GB per hour. |
| Software | Docker with the Compose plugin. Everything else comes with ProductOwner. |
| Browsers | Chrome, Edge, Firefox, Safari: on computers, tablets and phones. |
| Optional | An email account (SMTP) for invitations and recaps; an Anthropic API key for the AI features. |
Questions
Does my team need to install anything?
No. You install ProductOwner once, on one server or computer. Everyone else opens it in a browser and signs in with the invitation they receive.
Where is our data?
On your server only: the database, files and meeting recordings. Nothing is sent to us. AI features use your own API key and can be switched off.
How does the trial and licence work?
A new install runs as a 14-day trial for up to 25 people (clients don't count). Add the licence file in Settings → Licence. If it ends, nothing is deleted: ProductOwner becomes read-only until it's renewed.
How do updates and backups work?
./update.sh installs the newest version (it backs up first). ./backup.sh saves the database and files; put it in a nightly schedule and copy the backups off the server.
Can we bring our work from Jira or Azure DevOps?
Yes. The import brings stories, people and history across, and you can keep using GitHub or GitLab for code.
Do video meetings need another service?
No. The video server is part of the install and starts with everything else. For meetings over the internet, open TCP 7881 and UDP 7882.