Umami is a simple, fast, website analytics alternative to Google Analytics.
A detailed getting started guide can be found at https://umami.is/docs/
- A server with Node.js 12 or newer
- A database (MySQL or Postgresql)
git clone https://github.com/mikecao/umami.git cd umami npm install 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.
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.
npm run buildnpm startBy 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.
To build the umami container and start up a Postgres database, run:
docker-compose upAlternatively, to pull just the Umami Docker image with PostgreSQL support:
docker pull ghcr.io/mikecao/umami:postgresql-latestOr with MySQL support:
docker pull ghcr.io/mikecao/umami:mysql-latestTo get the latest features, simply do a pull, install any new dependencies, and rebuild:
git pull npm install npm run buildMIT