Frequency Analytics - Open source private web analytics server
Frequency Analytics is an open source web analytics tool that tracks and reports website traffic to help you measure visits, referrals, and trends for your website. After installing Frequency Analytics, just add a snippet of javascript to every page of your website to enable tracking. The javascript tracking code runs when a user browses the page and sends visitor data to your private Frequency Analytics server.
Portal Cloud is a hosting service that enables anyone to run open source cloud applications.
Sign up for Portal Cloud and get $15 free credit.
Running Frequency Analytics on a VPS is designed to be as simple as possible.
Recommended Specs
Create a DNS record for your domain that points to your server’s IP address.
Example: frequency.example.com A 172.x.x.x
Frequency Analytics runs a TLS (“SSL”) https server on port 443/tcp. It also runs a standard web server on port 80/tcp to redirect clients to the secure server. Port 80/tcp is required for Let’s Encrypt verification.
Requirements
Example usage:
# Download the frequency binary.
$ sudo wget -O /usr/bin/frequency https://github.com/frequencyanalytics/frequency/raw/master/frequency-linux-amd64
# Make it executable.
$ sudo chmod +x /usr/bin/frequency
# Allow it to bind to privileged ports 80 and 443.
$ sudo setcap cap_net_bind_service=+ep /usr/bin/frequency
$ frequency --http-host frequency.example.com
-backlink string
backlink (optional)
-compress-old-files
compress files for past days
-cpuprofile file
write cpu profile to file
-datadir string
data dir (default "/data")
-debug
debug mode
-delete-old-files
delete oldest files when storage exceeds 95% full (default true)
-help
display help and exit
-http-host string
HTTP host
-memprofile file
write mem profile to file
-version
display version and exit
The official image is frequencyanalytics/frequency
.
Follow the official Docker install instructions: Get Docker CE for Ubuntu
Make sure to change the --env FREQUENCY_HTTP_HOST
to your publicly accessible domain name.
# Your data directory must be bind-mounted as `/data` inside the container using the `--volume` flag.
# Create a data directoy
$ mkdir /data
docker create \
--name frequency \
--restart always \
--volume /data:/data \
--network host \
--env FREQUENCY_HTTP_HOST=frequency.example.com \
frequencyanalytics/frequency:latest
$ sudo docker start frequency
$ sudo docker logs frequency
<log output>
Pull the latest image, remove the container, and re-create the container as explained above.
# Pull the latest image
$ sudo docker pull frequencyanalytics/frequency
# Stop the container
$ sudo docker stop frequency
# Remove the container (data is stored on the mounted volume)
$ sudo docker rm frequency
# Re-create and start the container
$ sudo docker create ... (see above)
Email support@portal.cloud