2024-05-24 09:10:00 +02:00
< p align = "center" >
< img src = "https://github.com/shubhusion/umami/blob/master/src/assets/logo-white.svg" alt = "Umami Logo" width = "100" >
< / p >
2020-08-13 10:41:11 +02:00
2024-05-24 09:10:00 +02:00
# Umami
2020-08-19 23:35:38 +02:00
2024-05-24 09:10:00 +02:00
> Umami is a simple, fast, privacy-focused alternative to Google Analytics.
[![GitHub Release][release-shield]][releases-url]
[![MIT License][license-shield]][license-url]
[![Build Status][build-shield]][build-url]
2024-05-24 20:48:10 +02:00
## Demo
Explore Umami's features by trying out our demo installation:
[Umami Demo ](https://demo.umami.is/ )
Please note that the demo is provided for exploration purposes only and may not include the latest features or configurations. For a more accurate representation, consider installing Umami on your own server.
2024-05-24 09:10:00 +02:00
## Getting Started
2020-08-19 23:35:38 +02:00
A detailed getting started guide can be found at [https://umami.is/docs/ ](https://umami.is/docs/ )
2024-05-24 09:10:00 +02:00
## Installing from Source
2020-08-13 10:41:11 +02:00
2020-08-19 23:35:38 +02:00
### Requirements
2023-08-29 22:02:51 +02:00
- A server with Node.js version 16.13 or newer
2024-05-24 09:10:00 +02:00
- A database. Umami supports [MySQL ](https://www.mysql.com/ ) (minimum v8.0) and [PostgreSQL ](https://www.postgresql.org/ ) (minimum v12.14) databases.
2020-08-19 23:35:38 +02:00
2022-06-19 09:07:01 +02:00
### Install Yarn
2022-05-25 06:33:38 +02:00
2024-05-24 09:10:00 +02:00
```bash
2022-05-25 06:33:38 +02:00
npm install -g yarn
```
2024-05-24 09:10:00 +02:00
### Get the Source Code and Install Packages
2020-08-13 10:41:11 +02:00
2024-05-24 09:10:00 +02:00
```bash
2022-07-21 14:31:09 +02:00
git clone https://github.com/umami-software/umami.git
2020-08-13 10:41:11 +02:00
cd umami
2022-05-18 22:04:21 +02:00
yarn install
2020-08-17 06:28:54 +02:00
```
2024-05-24 09:10:00 +02:00
### Configure Umami
2020-08-13 10:41:11 +02:00
2024-05-24 09:10:00 +02:00
Create an `.env` file with the following:
2020-08-13 10:41:11 +02:00
2024-05-24 09:10:00 +02:00
```bash
2022-07-17 07:04:53 +02:00
DATABASE_URL=connection-url
2020-08-13 10:41:11 +02:00
```
2024-05-24 09:10:00 +02:00
The connection URL is in the following format:
2022-11-01 07:42:37 +01:00
2024-05-24 09:10:00 +02:00
```bash
2020-08-13 10:41:11 +02:00
postgresql://username:mypassword@localhost:5432/mydb
mysql://username:mypassword@localhost:3306/mydb
```
2024-05-24 09:10:00 +02:00
### Build the Application
2022-06-19 09:07:01 +02:00
```bash
2022-06-22 18:34:03 +02:00
yarn build
2022-06-19 09:07:01 +02:00
```
2023-12-08 07:39:04 +01:00
The build step will also create tables in your database if you are installing for the first time. It will also create a login user with username **admin** and password **umami** .
2022-06-27 11:41:31 +02:00
2024-05-24 09:10:00 +02:00
### Start the Application
2020-08-17 06:28:54 +02:00
2020-09-06 07:44:56 +02:00
```bash
2022-05-25 06:33:38 +02:00
yarn start
2020-08-17 06:28:54 +02:00
```
2024-05-24 09:10:00 +02:00
By default, this will launch the application on `http://localhost:3000` . You will need to either [proxy ](https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/ ) requests from your web server or change the [port ](https://nextjs.org/docs/api-reference/cli#production ) to serve the application directly.
2020-08-17 09:05:57 +02:00
2020-08-23 04:05:07 +02:00
## Installing with Docker
2020-08-19 06:23:04 +02:00
2024-05-24 09:10:00 +02:00
To build the Umami container and start up a Postgres database, run:
2020-08-19 06:23:04 +02:00
2020-09-06 07:44:56 +02:00
```bash
2023-03-30 20:34:11 +02:00
docker compose up -d
2020-08-19 06:23:04 +02:00
```
2020-09-06 07:44:56 +02:00
Alternatively, to pull just the Umami Docker image with PostgreSQL support:
2022-11-01 07:42:37 +01:00
2020-09-06 07:44:56 +02:00
```bash
2024-05-07 06:24:17 +02:00
docker pull docker.umami.is/umami-software/umami:postgresql-latest
2020-09-06 07:44:56 +02:00
```
Or with MySQL support:
2022-11-01 07:42:37 +01:00
2020-09-06 07:44:56 +02:00
```bash
2024-05-07 06:24:17 +02:00
docker pull docker.umami.is/umami-software/umami:mysql-latest
2020-09-06 07:44:56 +02:00
```
2024-05-24 09:10:00 +02:00
## Getting Updates
2020-09-03 17:56:51 +02:00
To get the latest features, simply do a pull, install any new dependencies, and rebuild:
2020-09-06 07:44:56 +02:00
```bash
2020-09-03 17:56:51 +02:00
git pull
2022-05-25 06:33:38 +02:00
yarn install
yarn build
2020-09-03 17:56:51 +02:00
```
2022-03-17 20:51:24 +01:00
To update the Docker image, simply pull the new images and rebuild:
```bash
2022-09-07 04:55:15 +02:00
docker compose pull
docker compose up --force-recreate
2022-03-17 20:51:24 +01:00
```
2024-05-24 09:10:00 +02:00
[release-shield]: https://img.shields.io/github/release/umami-software/umami.svg
[releases-url]: https://github.com/umami-software/umami/releases
[license-shield]: https://img.shields.io/github/license/umami-software/umami.svg
[license-url]: https://github.com/umami-software/umami/blob/master/LICENSE
[build-shield]: https://img.shields.io/github/actions/workflow/status/umami-software/umami/ci.yml
[build-url]: https://github.com/umami-software/umami/actions