fix: gel HTTP endpoint + admin UI, keydb as headless DB, leantime port/env; drop matomo — superseded by #765

- gel: allow plain HTTP for the reverse proxy (GEL_SERVER_HTTP_ENDPOINT_SECURITY=optional), enable admin UI and point the domain at /ui
- keydb: remove HTTP domain and published port — pure Redis-protocol DB reachable via internal network
- leantime: image serves on 8080 (non-root nginx), add required LEAN_APP_URL and LEAN_SESSION_PASSWORD, use utf8mb4
- matomo: removed from this PR, already fixed in #765

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Mauricio Siu
2026-07-08 03:03:58 -06:00
parent 3fc4acc373
commit d6bf8ac34c
10 changed files with 11 additions and 80 deletions

View File

@@ -9,6 +9,8 @@ services:
- GEL_SERVER_SECURITY=${GEL_SERVER_SECURITY}
- GEL_SERVER_PASSWORD=${GEL_SERVER_PASSWORD}
- GEL_SERVER_TLS_CERT_MODE=generate_self_signed
- GEL_SERVER_HTTP_ENDPOINT_SECURITY=optional
- GEL_SERVER_ADMIN_UI=enabled
volumes:
- gel-data:/var/lib/gel/data

View File

@@ -8,6 +8,7 @@ gel_security = "strict"
serviceName = "gel"
port = 5656
host = "${main_domain}"
path = "/ui"
[config.env]
GEL_SERVER_PASSWORD = "${gel_password}"

View File

@@ -3,8 +3,6 @@ services:
keydb:
image: eqalpha/keydb:latest
restart: unless-stopped
ports:
- 6379
command: keydb-server /etc/keydb/keydb.conf --server-threads 2 --requirepass ${KEYDB_PASSWORD}
volumes:
- keydb-data:/data

View File

@@ -1,12 +1,6 @@
[variables]
main_domain = "${domain}"
keydb_password = "${password:16}"
[config]
[[config.domains]]
serviceName = "keydb"
port = 6379
host = "${main_domain}"
[config.env]
KEYDB_PASSWORD = "${keydb_password}"

View File

@@ -4,8 +4,10 @@ services:
image: leantime/leantime:latest
restart: unless-stopped
ports:
- 80
- 8080
environment:
- LEAN_APP_URL=${LEAN_APP_URL}
- LEAN_SESSION_PASSWORD=${LEAN_SESSION_PASSWORD}
- LEAN_DB_HOST=db
- LEAN_DB_USER=${LEAN_DB_USER}
- LEAN_DB_PASSWORD=${LEAN_DB_PASSWORD}
@@ -24,7 +26,7 @@ services:
- MYSQL_DATABASE=${LEAN_DB_DATABASE}
- MYSQL_USER=${LEAN_DB_USER}
- MYSQL_PASSWORD=${LEAN_DB_PASSWORD}
command: --character-set-server=utf8 --collation-server=utf8_unicode_ci
command: --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
volumes:
- db-data:/var/lib/mysql

View File

@@ -4,14 +4,17 @@ db_password = "${password:16}"
db_root_password = "${password:16}"
db_user = "leantime"
db_name = "leantime"
session_password = "${password:32}"
[config]
[[config.domains]]
serviceName = "leantime"
port = 80
port = 8080
host = "${main_domain}"
[config.env]
LEAN_APP_URL = "http://${main_domain}"
LEAN_SESSION_PASSWORD = "${session_password}"
LEAN_DB_USER = "${db_user}"
LEAN_DB_PASSWORD = "${db_password}"
LEAN_DB_DATABASE = "${db_name}"

View File

@@ -1,34 +0,0 @@
version: "3.8"
services:
matomo:
image: matomo:5-apache
restart: unless-stopped
ports:
- 80
environment:
- MATOMO_DATABASE_HOST=db
- MATOMO_DATABASE_ADAPTER=mysql
- MATOMO_DATABASE_TABLES_PREFIX=matomo_
- MATOMO_DATABASE_USERNAME=${MATOMO_DB_USER}
- MATOMO_DATABASE_PASSWORD=${MATOMO_DB_PASSWORD}
- MATOMO_DATABASE_DBNAME=${MATOMO_DB_NAME}
volumes:
- matomo-data:/var/www/html
depends_on:
- db
db:
image: mariadb:11
restart: unless-stopped
command: --max-allowed-packet=64MB
environment:
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
- MYSQL_DATABASE=${MATOMO_DB_NAME}
- MYSQL_USER=${MATOMO_DB_USER}
- MYSQL_PASSWORD=${MATOMO_DB_PASSWORD}
volumes:
- db-data:/var/lib/mysql
volumes:
matomo-data: {}
db-data: {}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -1,17 +0,0 @@
{
"id": "matomo",
"name": "Matomo",
"version": "5",
"description": "Matomo is the leading open-source web analytics platform that gives you full ownership of your data. A privacy-focused alternative to Google Analytics.",
"logo": "matomo.png",
"links": {
"github": "https://github.com/matomo-org/matomo",
"website": "https://matomo.org/",
"docs": "https://matomo.org/guides/"
},
"tags": [
"analytics",
"privacy",
"self-hosted"
]
}

View File

@@ -1,18 +0,0 @@
[variables]
main_domain = "${domain}"
db_password = "${password:16}"
db_root_password = "${password:16}"
db_user = "matomo"
db_name = "matomo"
[config]
[[config.domains]]
serviceName = "matomo"
port = 80
host = "${main_domain}"
[config.env]
MATOMO_DB_USER = "${db_user}"
MATOMO_DB_PASSWORD = "${db_password}"
MATOMO_DB_NAME = "${db_name}"
MYSQL_ROOT_PASSWORD = "${db_root_password}"