diff --git a/blueprints/goatcounter/docker-compose.yml b/blueprints/goatcounter/docker-compose.yml new file mode 100644 index 000000000..a19a689af --- /dev/null +++ b/blueprints/goatcounter/docker-compose.yml @@ -0,0 +1,33 @@ +services: + postgres: + image: postgres:18-alpine + restart: unless-stopped + environment: + POSTGRES_USER: goatcounter + POSTGRES_PASSWORD: ${DB_PASSWORD:?DB_PASSWORD is required} + POSTGRES_DB: goatcounter + volumes: + - postgres_data:/var/lib/postgresql + healthcheck: + test: ["CMD-SHELL", "pg_isready -U goatcounter -d goatcounter"] + interval: 5s + timeout: 5s + retries: 5 + + goatcounter: + image: arp242/goatcounter:2.7 + restart: unless-stopped + depends_on: + postgres: + condition: service_healthy + expose: + - "8080" + environment: + GOATCOUNTER_DB: "postgresql+postgresql://goatcounter:${DB_PASSWORD:?DB_PASSWORD is required}@postgres:5432/goatcounter?sslmode=disable" + GOATCOUNTER_LISTEN: "0.0.0.0:8080" + command: + - serve + - -automigrate + +volumes: + postgres_data: \ No newline at end of file diff --git a/blueprints/goatcounter/logo.svg b/blueprints/goatcounter/logo.svg new file mode 100644 index 000000000..9477e0354 --- /dev/null +++ b/blueprints/goatcounter/logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/blueprints/goatcounter/meta.json b/blueprints/goatcounter/meta.json new file mode 100644 index 000000000..45c713e95 --- /dev/null +++ b/blueprints/goatcounter/meta.json @@ -0,0 +1,13 @@ +{ + "id": "goatcounter", + "name": "GoatCounter", + "version": "2.7.0", + "description": "GoatCounter is an open source web analytics platform available as a free donation-supported hosted service or self-hosted app. It aims to offer easy to use and meaningful privacy-friendly web analytics as an alternative to Google Analytics or Matomo.", + "logo": "logo.svg", + "links": { + "website": "https://www.goatcounter.com/", + "github": "https://github.com/arp242/goatcounter", + "docs": "https://www.goatcounter.com/help/" + }, + "tags": ["analytics", "privacy"] +} \ No newline at end of file diff --git a/blueprints/goatcounter/template.toml b/blueprints/goatcounter/template.toml new file mode 100644 index 000000000..040ae979b --- /dev/null +++ b/blueprints/goatcounter/template.toml @@ -0,0 +1,12 @@ +[variables] +db_password = "${password:32}" +goatcounter_domain = "${domain}" + +[config] +env = ["DB_PASSWORD=${db_password}"] + +[[config.domains]] +serviceName = "goatcounter" +port = 8080 +host = "${goatcounter_domain}" +https = true \ No newline at end of file