보통 운영중인 웹사이트의 사이트 통계를 확인하기 위해서는 내부적인 도구를 사용하거나 Google Analytics, Naver Analytics 등 외부 도구를 많이 사용하는 편입니다. 하지만 내 웹사이트의 정보가 외부로 나간다는 건 사실 좀 망설여지는 일이긴 하죠. 그리고 기능도 너무 복잡해서 진짜 간단한 통계만을 원하는데 덩치가 너무 커서 통계 확인 중 길을 잃기도 합니다.
그래서 많은 대안이 있긴 한데 뭔가 복잡하고 더 어렵고 돈을 받는 경우가 상당합니다. 1) 복잡한게 아니라 간단한 웹사이트 방문 정보만 확인하고 싶은데 2) 구축하는데 시간과 신경을 쓰고 싶지 않으면 Umami를 한번 사용해보셔도 좋을 것 같습니다.
Umami에서는 사이트 단위로 조회수(PV), 방문객(UV), 이탈율, 평균 체류시간 및 조회가 일어난 페이지, 방문 로그, 검색엔진이나 타 사이트의 링크를 타고 왔을 경우에 대한 리퍼러, 방문객의 브라우저, OS, 플랫폼 및 국가 정보를 심플하게 확인할 수 있으며, 이 정보들을 실시간 확인할 수도 있습니다. 배포나 사용이 간단하고 부담없기 때문에 한번쯤 시도해보시는 것을 추천합니다.
1. docker-compose.yml 파일과 기본 스키마 파일, DB 데이터가 저장될 디렉토리를 생성합니다.$ mkdir -p ~/docker-apps/umami
$ mkdir -p ~/docker-apps/umami/sql
$ mkdir -p ~/docker-apps/umami/db-data
2. 기본 스키마 파일을 다운로드받습니다.$ cd ~/docker-apps/umami/sql
$ wget https://github.com/umami-software/umami/blob/2b395f252d2daebaca94143a7ef5ecd55f47400c/sql/schema.postgresql.sql
- 경로가 변경되어 다운로드를 받지 못하는 경우 https://github.com/umami-software/umami/tree/master/sql 에서 받으실 수 있습니다.
3. docker-compose.yml 파일을 작성합니다. HASH_SALT는 임의의 문자열을 입력하면 됩니다.
version: '3'
services:
umami:
image: ghcr.io/umami-software/umami:postgresql-latest
ports:
- "3999:3000"
environment:
DATABASE_URL: postgresql://umami:umami@db:5432/umami
DATABASE_TYPE: postgresql
HASH_SALT: cd45767b431a88f1df6b7c1f2b49d0b0
depends_on:
- db
restart: always
db:
image: postgres:12-alpine
environment:
POSTGRES_DB: umami
POSTGRES_USER: umami
POSTGRES_PASSWORD: umami
volumes:
- ./sql/schema.postgresql.sql:/docker-entrypoint-initdb.d/schema.postgresql.sql:ro
- ./db-data:/var/lib/postgresql/data
restart: always
4. docker compose를 실행하여 배포합니다.$ docker compose up -d
5. 웹접속해봅니다.
http://{{server ip}}:3999
* Nginx Proxy Manager 등으로 리버스 프록시를 먼저 설정해두면 웹사이트 추가 시 생성되는 자바스크립트에 서버 주소가 반영되므로 미리 설정하는 편이 좋습니다.
6. 초기 계정 admin / umami 입니다. 로그인 후 패스워드 및 계정을 변경할 수 있습니다.
7. 이후에는 웹사이트 추가하고, 웹사이트용 자바스크립트를 복사하여 사이트의 <header> 부분에 입력하면 바로 통계를 받아오기 시작합니다(느낌상 한 2~3분 정도 후부터 확인이 됩니다). 자세한 사용법은 서버포럼 게시물을 참고하시면 도움이 됩니다. 🙂 ⓣ