Setting Up Matomo Analytics with a Dedicated MariaDB Instance
Overview
This article details the process of deploying Matomo Analytics using a dedicated, isolated MariaDB database. This method ensures that your analytics data remains separate from other services (like Nextcloud), preventing database conflicts and simplifying maintenance.
Prerequisites
- Host System: Ubuntu Server with CasaOS or Docker installed.
- Storage Path: /DATA/AppData/matomo
- Port Availability: Port 8484
1. Docker Compose Configuration
Use the following configuration for a Custom Install in CasaOS:
services:
matomo_db:
image: mariadb:10.11
container_name: matomo_db
command: --max-allowed-packet=64MB
environment:
- MARIADB_ROOT_PASSWORD=matomo_root_password
- MARIADB_DATABASE=matomo
- MARIADB_USER=matomo
- MARIADB_PASSWORD=matomo_secure
volumes:
- /DATA/AppData/matomo/db:/var/lib/mysql
restart: unless-stopped
matomo_app:
image: matomo:latest
container_name: matomo_app
restart: unless-stopped
ports:
- "8484:80"
environment:
- MATOMO_DATABASE_HOST=matomo_db
- MATOMO_DATABASE_DBNAME=matomo
- MATOMO_DATABASE_USERNAME=matomo
- MATOMO_DATABASE_PASSWORD=matomo_secure
volumes:
- /DATA/AppData/matomo/html:/var/www/html
depends_on:
- matomo_db
2. Database Connection Credentials
During the Matomo web-based setup wizard, use these internal credentials:
| Setting | Value |
|---|---|
| Database Server | matomo_db |
| Login | matomo |
| Password | matomo_secure |
| Database Name | matomo |
3. Implementation on BookStack
- Log in to Matomo and navigate to Administration > Websites > Manage.
- Copy the JavaScript Tracking Code.
- In BookStack, navigate to Settings > Customization.
- Paste the script into the Custom HTML Head Content area and save.
No comments to display
No comments to display