Running on CapRover
Deploy Umami on CapRover with a one-click app, either with a bundled PostgreSQL database or connected to a PostgreSQL database you run yourself.
CapRover is an easy-to-use app and database deployment and web server manager for Node.js, Python, PHP, ASP.NET, Ruby, MongoDB, PostgreSQL, WordPress, etc. applications. It uses Docker, Nginx, Let's Encrypt and NetData under the hood behind its simple-to-use interface.
- CLI for automation and scripting
- Web GUI for ease of access and convenience
- No lock-in! Remove CapRover and your apps keep working!
- Docker Swarm under the hood for containerization and clustering
- Nginx (fully customizable template) under the hood for load-balancing
- Let's Encrypt under the hood for free SSL (HTTPS)
Setup#
Setting up Umami on CapRover is fairly easy. Follow the steps below to set up Umami on CapRover:
1. Visit your CapRover Dashboard#
Log in to your existing CapRover instance account at captain.your-sub-domain.your-domain.xx.
If you don't have an existing CapRover instance, check out their docs at CapRover - Get Started.
2. Create app from template#
Click on the "Apps" section of your CapRover instance. Now select "One-Click Apps/Databases" and search for Umami. You will find 2 options:
umami-postgresqlwill create Umami with a PostgreSQL database.umami-onlywill create Umami alone. You need to run your own PostgreSQL database and provide the database credentials in the setup.
3. Set up Umami with a database#
After selecting umami-postgresql from the CapRover One-Click Apps, you'll be prompted with a setup page where you can specify some environment variables. Notice how most of them are already configured.
App Nameis the display name for your Umami instance in CapRover.Postgres Versioncan be any PostgreSQL version available on PostgreSQL - Docker Hub. The default value has been tested to work with Umami.CapRover Umami Versionis the Umami Docker image tag to deploy. You can use a version tag from the Umami release page, orlatestto use the latest version of Umami.Database passwordis the password for your database. There will always be a default value ready for you.- Optional:
Arguments for 'postgres initdb'lets you provide arguments for PostgreSQL initdb, for example--data-checksums.
Now just click on "Deploy" to start the setup of your CapRover Umami instance with a database service. Please do not leave the page until it's done.
4. Set up Umami without database services#
In some scenarios you may need to manage your database service on your own or use a remote database service for your Umami application. To do that, use the umami-only CapRover app.
Before setting up this application, you need to create a PostgreSQL database.
After you set up your database, click on umami-only in CapRover and fill in the variables in the setup:
App Nameis the display name for your Umami instance in CapRover.CapRover Umami Versionis the Umami Docker image tag to deploy. You can use a version tag from the Umami release page, orlatestto use the latest version of Umami.Database Remote URLis the host that Umami uses to connect to the database. If your database is in your CapRover network, usesrv-captain--appName.Database Useris your database user.Database Table Nameis the name of the database you created for your Umami application.Database Passwordis your database password.
Now just click on "Deploy" to start the setup of your CapRover Umami instance.
Please do not leave the page until it's done.
5. Final checks#
You can now log in to your Umami deployment at app-name.your-sub-domain.your-domain.xx as described in the Login section. Please immediately change your password on the profile page.
6. Updating an existing Umami instance#
First make a backup of your database before doing the update. After you make a backup, go to the CapRover panel and select your Umami app.
Go to the Deployment tab, scroll down to Deploy via ImageName, and deploy the desired version from the Umami Docker Registry, for example ghcr.io/umami-software/umami:latest.
Support#
Create an issue on GitHub.