50 lines
1.8 KiB
YAML
50 lines
1.8 KiB
YAML
services:
|
|
wakaapi:
|
|
image: ${WAKAAPI_IMAGE}
|
|
container_name: ${WAKAAPI_NAME}
|
|
restart: unless-stopped
|
|
networks:
|
|
- tsysdevstack-supportstack-demo-network
|
|
ports:
|
|
- "${BIND_ADDRESS}:${WAKAAPI_PORT}:3000"
|
|
environment:
|
|
- WAKAPI_PASSWORD_SALT=TSYSDevStackSupportStackDemoSalt12345678
|
|
- WAKAPI_DB_TYPE=sqlite3
|
|
- WAKAPI_DB_NAME=/data/wakapi.db
|
|
- WAKAPI_PORT=3000
|
|
- WAKAPI_PUBLIC_URL=http://${BIND_ADDRESS}:${WAKAAPI_PORT}
|
|
- WAKAPI_ALLOW_SIGNUP=true
|
|
- WAKAPI_WAKATIME_API_KEY=${WAKAAPI_WAKATIME_API_KEY:-""}
|
|
tmpfs:
|
|
- /data:rw,size=128m,uid=${TSYSDEVSTACK_UID},gid=${TSYSDEVSTACK_GID},mode=0750
|
|
mem_limit: ${WAKAAPI_MEM_LIMIT}
|
|
mem_reservation: ${WAKAAPI_MEM_LIMIT}
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
cpus: '${WAKAAPI_CPU_LIMIT}'
|
|
memory: ${WAKAAPI_MEM_LIMIT}
|
|
reservations:
|
|
cpus: '${WAKAAPI_CPU_LIMIT}'
|
|
memory: ${WAKAAPI_MEM_LIMIT}
|
|
healthcheck:
|
|
test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:3000/api"]
|
|
interval: ${HEALTH_CHECK_INTERVAL}
|
|
timeout: ${HEALTH_CHECK_TIMEOUT}
|
|
start_period: ${WAKAAPI_INITIALIZATION_TIMEOUT} # Longer start period for wakaapi
|
|
retries: ${HEALTH_CHECK_RETRIES}
|
|
# Homepage integration labels for automatic discovery
|
|
labels:
|
|
homepage.group: "Development Tools"
|
|
homepage.name: "WakaAPI"
|
|
homepage.icon: "wakapi.png"
|
|
homepage.href: "http://${BIND_ADDRESS}:${WAKAAPI_PORT}"
|
|
homepage.description: "WakaTime API for coding metrics"
|
|
homepage.type: "wakapi"
|
|
user: "${TSYSDEVSTACK_UID}:${TSYSDEVSTACK_GID}" # Regular user access for non-Docker containers
|
|
|
|
networks:
|
|
tsysdevstack-supportstack-demo-network:
|
|
external: true
|
|
name: ${TSYSDEVSTACK_NETWORK_NAME}
|