-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
131 lines (127 loc) · 5.14 KB
/
docker-compose.yml
File metadata and controls
131 lines (127 loc) · 5.14 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
services:
insightstack-grafana:
container_name: insightstack-grafana
image: 'grafana/grafana:latest'
environment:
GF_SERVER_DEFAULT_TIMEZONE: ${TZ}
GF_SECURITY_ADMIN_USER: ${GF_SECURITY_ADMIN_USER}
GF_SECURITY_ADMIN_PASSWORD: ${GF_SECURITY_ADMIN_PASSWORD}
GF_SECURITY_ALLOW_EMBEDDING: true
GF_SECURITY_DISABLE_GRAVATAR: true
GF_AUTH_BASIC_ENABLED: true
GF_AUTH_ANONYMOUS_ENABLED: true
GF_AUTH_DISABLE_LOGIN_FORM: false
GF_AUTH_ANONYMOUS_ORG_ROLE: Viewer
GF_USERS_ALLOW_SIGN_UP: false
GF_ANALYTICS_REPORTING_ENABLED: FALSE
GF_DASHBOARDS_DEFAULT_HOME_DASHBOARD_PATH: /var/lib/grafana/dashboards/mine/maxo99-v1.json
# GF_PATHS_PLUGINS: /var/lib/grafana-plugins
ports:
- protocol: tcp
published: 3000
target: 3000
restart: unless-stopped
healthcheck:
test: "curl -f http://grafana:3000/api/health"
interval: 30s
timeout: 10s
retries: 3
start_period: 30s
volumes:
- grafana_data:/var/lib/grafana
- ./.docker_data/grafana/provisioning:/etc/grafana/provisioning
- ./.docker_data/grafana/dashboards:/var/lib/grafana/dashboards
insightstack-influxdb:
container_name: insightstack-influxdb
environment:
# TZ: ${TZ}
# INFLUXDB_TZ: ${TZ}
INFLUXDB_ADMIN_USER: ${INFLUXDB_ADMIN_USER}
INFLUXDB_ADMIN_PASSWORD: ${INFLUXDB_ADMIN_PASSWORD}
INFLUXDB_DATA_ENGINE: tsi1
INFLUXDB_DB: ${INFLUXDB_DB_NAME}
INFLUXDB_HTTP_LOG_ENABLED: "true"
INFLUXDB_LOGGING_FORMAT: json
INFLUXDB_LOGGING_LEVEL: DEBUG
INFLUXDB_MONITOR_STORE_DATABASE: _internal
INFLUXDB_MONITOR_STORE_ENABLED: "true"
INFLUXDB_REPORTING_DISABLED: "true"
INFLUXDB_USER: ${INFLUXDB_USER}
INFLUXDB_USER_PASSWORD: ${INFLUXDB_USER_PASSWORD}
image: influxdb:1.8
ports:
- protocol: tcp
published: 8086
target: 8086
restart: always
healthcheck:
test: "curl -f http://insightstack-influxdb:8086/health"
interval: 30s
timeout: 10s
retries: 3
start_period: 30s
volumes:
- ./.docker_data/influxdb:/var/lib/influxdb
- ./influxdb/influx_init.iql:/docker-entrypoint-initdb.d/influx_init.iql
# - ./influxdb-data:/var/lib/influxdb:rw
insightstack-collector-weatherflow:
container_name: insightstack-collector-weatherflow
environment:
# WeatherFlow Collector specific environment variables
WEATHERFLOW_COLLECTOR_TZ: ${TZ}
WEATHERFLOW_COLLECTOR_API_TOKEN: ${WEATHERFLOW_COLLECTOR_TOKEN}
WEATHERFLOW_COLLECTOR_COLLECTOR_TYPE: primary
# Dev
WEATHERFLOW_COLLECTOR_LOGGER_FILE_ENABLED: "true"
WEATHERFLOW_COLLECTOR_LOG_DIRECTORY: /var/log/weatherflow-collector
WEATHERFLOW_COLLECTOR_DEBUG: "true"
WEATHERFLOW_COLLECTOR_DEBUG_CURL: "true"
WEATHERFLOW_COLLECTOR_DISABLE_HEALTH_CHECK: "false"
WEATHERFLOW_COLLECTOR_DISABLE_HOST_PERFORMANCE: "false"
WEATHERFLOW_COLLECTOR_DISABLE_LOCAL_UDP: "false"
WEATHERFLOW_COLLECTOR_DISABLE_REMOTE_FORECAST: "false"
WEATHERFLOW_COLLECTOR_DISABLE_REMOTE_REST: "true"
WEATHERFLOW_COLLECTOR_DISABLE_REMOTE_SOCKET: "false"
# WEATHERFLOW_COLLECTOR_COLLECTOR_EXPORT_ENABLED: "true"
# WEATHERFLOW_COLLECTOR_EXPORT_DAYS: 7
# WEATHERFLOW_COLLECTOR_EXPORT_CLIENT_EXPORT_FOLDER: ...
WEATHERFLOW_COLLECTOR_HEALTHCHECK: "true"
# Environment variables for InfluxDB connection
WEATHERFLOW_COLLECTOR_INFLUXDB_URL: http://${INFLUXDB_HOST}:${INFLUXDB_PORT}
WEATHERFLOW_COLLECTOR_INFLUXDB_USERNAME: ${INFLUXDB_USER}
WEATHERFLOW_COLLECTOR_INFLUXDB_TOKEN: ${INFLUXDB_ADMIN_PASSWORD}
WEATHERFLOW_COLLECTOR_INFLUXDB_DATABASE: ${INFLUXDB_DB_NAME}
WEATHERFLOW_COLLECTOR_INFLUXDB_ORG: ${INFLUXDB_ORG}
WEATHERFLOW_COLLECTOR_INFLUXDB_BUCKET: weatherflow
restart: always
depends_on:
- "insightstack-influxdb"
image: maxo5499/insightstack-collector-weatherflow:latest
volumes:
- ./.docker_data/collector-weatherflow/logs:/var/log/weatherflow-collector
- ./.docker_data/collector-weatherflow/config:/etc/weatherflow-collector
- ./.docker_data/collector-weatherflow/data:/var/lib/weatherflow-collector
ports:
- protocol: udp
published: 50222
target: 50222
insightstack-collector-garmin:
restart: unless-stopped
image: maxo5499/insightstack-collector-garmin:latest
container_name: insightstack-collector-garmin
depends_on:
- insightstack-influxdb
volumes:
- ./.docker_data/garminconnect/tokens:/home/appuser/.garminconnect # (persistent tokens storage - garminconnect-tokens folder must be owned by 1000:1000) - should be './garminconnect-tokens:/root/.garminconnect' instead if you are using using user: root
environment:
- USER_TIMEZONE=${TZ}
- GARMINCONNECT_EMAIL=${GARMINCONNECT_EMAIL}
- GARMINCONNECT_BASE64_PASSWORD=${GARMINCONNECT_BASE64_PASSWORD}
# InfluxDB
- INFLUXDB_DATABASE=GarminStats
- INFLUXDB_HOST=${INFLUXDB_HOST}
- INFLUXDB_PORT=${INFLUXDB_PORT}
- INFLUXDB_USERNAME=${INFLUXDB_USER}
- INFLUXDB_PASSWORD=${INFLUXDB_ADMIN_PASSWORD}
volumes:
grafana_data: