Installation
There are several different ways to install Umami.
- Installing from source: Get the code from GitHub and build the application yourself.
- Using Docker compose: Build your own Docker container using
docker compose
. - Using a Docker image: Download a pre-built Docker image.
Installing from source
Requirements
- A server with Node.js version 18.17 or newer.
- A database. Umami supports MySQL (minimum v8.0) and PostgreSQL (minimum v12.14) databases.
Install Yarn
npm install -g yarn
Get the source code and install packages
git clone https://github.com/umami-software/umami.git
cd umami
yarn install
Configure Umami
Create an .env
file with the following
DATABASE_URL={connection url}
The connection url is in the following format:
DATABASE_URL=postgresql://username:mypassword@localhost:5432/mydb
DATABASE_URL=mysql://username:mypassword@localhost:3306/mydb
Build the application
yarn build
The first time the build is run, it will create all the required database tables in your database. It will also create a login account with username admin and password umami.
Start the application
yarn start
By default this will launch the application on http://localhost:3000
. You will need to either
proxy requests from your web server
or change the port to serve the application directly.
Running Umami
You can simply run yarn start
to start Umami, but it's highly recommended you use a process manager like PM2 which will handle restarts for you.
To run with PM2:
yarn global add pm2
cd umami
pm2 start yarn --name umami -- start
pm2 startup
pm2 save
Installing with Docker
Umami ships with a docker compose that contains the application and a PostgreSQL database.
To build the Docker container and start up with a Postgres database, run:
docker-compose up -d
Alternatively, if you want to use prebuilt images, you can pull the Umami Docker image with PostgreSQL support:
docker pull docker.umami.is/umami-software/umami:postgresql-latest
Or with MySQL support:
docker pull docker.umami.is/umami-software/umami:mysql-latest