Как установить GoatCounter на Ubuntu 24.04
Дата публикации: 2024-11-13T12:57:14
Теги: ["GoatCounter", "ubuntu"]
GoatCounter - это платформа веб-аналитики с открытым исходным кодом, доступная в качестве размещенного сервиса (бесплатно для некоммерческого использования) или самостоятельного приложения. Он призван предложить простую в использовании и содержательную веб-аналитику, удобную для конфиденциальности, в качестве альтернативы Google Analytics или Matomo.
Предпосылки
- Сервер с Ubuntu 24.04 в качестве ОС
- Права пользователя: пользователь root или обычный пользователь с привилегиями sudo
Шаг 1. Обновите систему
Свежая установка Ubuntu 24.04 требует обновления пакетов до последних доступных версий.
sudo apt-get update -y && sudo apt-get upgrade -y
Шаг 2. Установите PostgreSQL
Установите пакет Postgres вместе с пакетом contrib, который добавляет некоторые дополнительные утилиты и функции.
sudo apt install postgresql postgresql-contrib
После установки запустите и включите службу PostgreSQL.
sudo systemctl enable postgresql.service && sudo systemctl start postgresql.service
Шаг 3. Создайте базу данных
Нам нужно создать базу данных для GoatCounter.
sudo -u postgres psql -c "CREATE USER goatcounter WITH PASSWORD 'YourStrongPasswordHere';" sudo -u postgres psql -c "CREATE DATABASE goatcounter_db OWNER goatcounter;" sudo -u postgres psql -c "GRANT ALL PRIVILEGES ON DATABASE goatcounter_db TO goatcounter;"
Обязательно обновите «YourStrongPasswordHere», указав более безопасный пароль.
Шаг 4. Установите GoatCounter
Загрузите последний бинарный файл со страницы релизов на [GitHub](https://github.com/arp242/goatcounter/releases).
Мы установим GoatCounter в `/usr/local/bin/`, измените путь, где это необходимо, если вы хотите установить его в другом месте.
curl -L https://github.com/arp242/goatcounter/releases/download/v2.5.0/goatcounter-v2.5.0-linux-amd64.gz -o goatcounter.gz gunzip goatcounter.gz chmod +x goatcounter sudo mv goatcounter /usr/local/bin/goatcounter sudo setcap 'cap_net_bind_service=+ep' /usr/local/bin/goatcounter
Убедитесь, что возможность добавлена:
getcap /usr/local/bin/goatcounter /usr/local/bin/goatcounter = cap_net_bind_service+ep
Обратите внимание, что вам придется сделать эту операцию каждый раз, когда вы обновляете GoatCounter.
Шаг 5. Создайте пользователя для запуска
sudo adduser \ --system \ --shell '/usr/sbin/nologin' \ --no-create-home \ --gecos 'GoatCounter Web Analytics' \ --group \ --disabled-password \ goatcounter
Чтобы завершить установку, запустите миграции SQL и создайте администратора пользователя.
goatcounter db create site -vhost=stats.examlpe.com -user.email=me@examlpe.com -db postgresql+postgres://goatcounter:YourStrongPasswordHere@127.0.0.1:5432/goatcounter_db -createdb
Шаг 6. Настройте службу systemd для запуска GoatCounter
Используйте nano, чтобы создать новый файл сервиса.
sudo nano /etc/systemd/system/goatcounter.service
И добавьте следующее содержимое в `goatcounter.service`.
[Unit] Description=GoatCounter Web Analytics Requires=network.target After=network.target After=postgresql.service [Service] Type=simple User=goatcounter Group=goatcounter # ExecStart for reverse proxy setup ExecStart=/usr/local/bin/goatcounter serve -automigrate -listen 127.0.0.1:7005 -tls none -db postgresql+postgres://goatcounter:YourStrongPasswordHere@127.0.0.1:5432/goatcounter_db sslmode=disable TimeoutStopSec=5 Restart=always [Install] WantedBy=multi-user.target
Включите и запустите GoatCounter при загрузке.
sudo systemctl start goatcounter.service sudo systemctl status goatcounter.service sudo systemctl enable goatcounter.service
Шаг 7. Настройте Nginx в качестве обратного прокси
sudo apt-get -y install nginx
Создайте обратный конфигурацию прокси-сервера для GoatCounter.
sudo nano /etc/nginx/sites-available/goatcounter.conf
Заполните файл следующей конфигурацией.
server {
server_name stats.examlpe.com;
listen 80;
location / {
proxy_pass http://127.0.0.1:7005;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
Включите конфигурацию обратной прокси-сервера goatcounter Nginx.
sudo ln -s /etc/nginx/sites-available/goatcounter.conf /etc/nginx/sites-enabled/goatcounter.conf
Проверка конфигурации и перезагрузите службу Nginx.
sudo nginx -t sudo systemctl restart nginx.service
Как только GoatCounter настроен и запущен, его довольно легко использовать.
Перейдите в браузер и получите доступ к http://stats.examlpe.com. Электронная почта и пароль были определены при настройке нового экземпляра.
Шаг 8. Обновите свой блог
Последним шагом является добавление на свой сайт только с одним тегом сценария. С этого момента доступ будет подсчитываться GoatCounter, и у вас будет доступ к статистике вашего блога.
Завершение
Собственно на этом все. Остается только у своего доменного регистратора прописать на используемый `stats.examlpe.com` требуемый ip-адрес, дождаться его делегирования.
В целом, GoatCounter мне очень понравился тем, что он очень легкий и быстрый - требуется один JavaScript добавляет всего ~2,5КБ, простой и эффективный UI.
Вы успешно установили GoatCounter на Ubuntu 24.04. Вы также можете поделиться статьей со своими друзьями в социальных сетях, которым может быть интересна эта статья или просто оставить комментарий ниже. Спасибо.