Umami is a simple, fast, privacy-focused alternative to Google Analytics.
Go to file
Mike Cao 3974392eee
Merge pull request #1166 from tmair/docker-standalone-output
use outputStandalone to reduce docker image size
2022-05-24 21:08:40 -07:00
.github Update language bundles. 2022-04-03 20:19:05 -07:00
.husky Fix build issues. 2021-11-22 14:53:36 -08:00
assets Updated packages. 2022-03-31 09:55:42 -07:00
components Updated share token logic. Closes #1113. 2022-05-05 19:04:28 -07:00
hooks Updated README. 2022-05-06 21:57:25 -07:00
lang Merge pull request #1120 from ym-project/master 2022-04-27 08:35:44 -07:00
lib Updated share token logic. Closes #1113. 2022-05-05 19:04:28 -07:00
pages Updated share token logic. Closes #1113. 2022-05-05 19:04:28 -07:00
prisma Update prisma seed files. 2022-03-31 19:25:04 -07:00
public Updated language bundle. 2022-04-29 20:50:54 -07:00
scripts Remove prestart script. 2022-04-07 20:13:53 -07:00
sql Fix charset issues on mySQL (fixes #388) 2020-11-28 00:42:00 +01:00
store preserve dashboard settings in localStorage 2022-04-04 19:15:49 +03:00
styles Updated next and prisma. 2022-04-02 21:07:08 -07:00
tracker Update `tracker/index.js`: `SendBeacon()` to Fetch API 2022-05-22 23:18:26 +05:30
.dockerignore for better local building performance 2020-08-23 14:07:01 +12:00
.eslintrc.json Cleaned up eslint config. 2022-03-18 19:02:06 -07:00
.gitignore Added lt-LT and ur-PK languages. Changed lang build. 2022-02-15 20:34:16 -08:00
.prettierignore Add indexes to tables. 2020-07-17 19:33:40 -07:00
.prettierrc.json Initial commit. 2020-07-17 01:03:38 -07:00
.stylelintrc.json Update readme. 2022-04-07 18:15:45 -07:00
Dockerfile use outputStandalone to reduce docker image size 2022-05-24 14:43:19 +02:00
LICENSE Added license. 2020-08-17 00:05:57 -07:00
Procfile Add Procfile to tell Heroku how to start the app 2020-10-25 22:58:56 +00:00
README.md fix(readme): replace npm install by yarn install 2022-05-18 22:04:21 +02:00
app.json Added app.json for heroku 2021-11-01 18:19:48 +05:30
docker-compose.yml Consider adding restart policy to docker-compose.yml 2021-07-10 17:05:01 +08:00
jsconfig.json Initial commit. 2020-07-17 01:03:38 -07:00
lang-ignore.json Updated language bundles. 2022-04-12 21:49:17 -07:00
netlify.toml add netlify.toml 2022-02-19 17:15:44 -06:00
next.config.js use outputStandalone to reduce docker image size 2022-05-24 14:43:19 +02:00
package.json Bump version 1.31.0. 2022-05-06 22:35:36 -07:00
postcss.config.js add rtl support 2021-05-13 09:15:37 +03:00
rollup.tracker.config.js Fix tracker build. 2022-03-02 12:10:47 -08:00
yarn.lock Reverted Next to v12.1.0 due to Heroku issues. 2022-04-29 20:53:00 -07:00

README.md

umami

Umami is a simple, fast, privacy-focused alternative to Google Analytics.

Getting started

A detailed getting started guide can be found at https://umami.is/docs/

A fast way to get up and running is to use Railway

Deploy on Railway

See Running on Railway to get started.

Installing from source

Requirements

  • A server with Node.js 12 or newer
  • Yarn package manager
  • A database (MySQL or Postgresql)

Get the source code and install packages

git clone https://github.com/mikecao/umami.git
cd umami
yarn install

Create database tables

Umami supports MySQL and Postgresql. Create a database for your Umami installation and install the tables with the included scripts.

For MySQL:

mysql -u username -p databasename < sql/schema.mysql.sql

For Postgresql:

psql -h hostname -U username -d databasename -f sql/schema.postgresql.sql

This will also create a login account with username admin and password umami.

Configure umami

Create an .env file with the following

DATABASE_URL=(connection url)
HASH_SALT=(any random string)

The connection url is in the following format:

postgresql://username:mypassword@localhost:5432/mydb

mysql://username:mypassword@localhost:3306/mydb

The HASH_SALT is used to generate unique values for your installation.

Build the application

npm run build

Start the application

npm 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.

Installing with Docker

To build the umami container and start up a Postgres database, run:

docker-compose up

Alternatively, to pull just the Umami Docker image with PostgreSQL support:

docker pull ghcr.io/mikecao/umami:postgresql-latest

Or with MySQL support:

docker pull ghcr.io/mikecao/umami:mysql-latest

Getting updates

To get the latest features, simply do a pull, install any new dependencies, and rebuild:

git pull
npm install
npm run build

To update the Docker image, simply pull the new images and rebuild:

docker-compose pull
docker-compose up --force-recreate

License

MIT