87 lines
2.3 KiB
Markdown
87 lines
2.3 KiB
Markdown
# 要準備的檔案
|
||
```
|
||
├── data
|
||
│ ├── grafana
|
||
│ │ └── provisioning
|
||
│ │ └── datasources
|
||
│ │ └── datasources.yaml
|
||
│ └── prometheus
|
||
│ └── prometheus.yml
|
||
├── docker-compose.yml
|
||
```
|
||
|
||
- `docker-compose.yml`
|
||
- `data/grafana/provisioning/datasources/datasources.yaml`
|
||
- `data/prometheus/prometheus.yml`
|
||
|
||
# `docker-compose.yml`
|
||
|
||
```yaml highlight:"5"
|
||
services:
|
||
grafana:
|
||
image: grafana/grafana:latest
|
||
restart: always
|
||
user: "1000"
|
||
ports:
|
||
- "8082:3000"
|
||
volumes:
|
||
- ./data/grafana/data:/var/lib/grafana # data path
|
||
- ./data/grafana/grafana.ini:/etc/grafana/grafana.ini
|
||
- ./data/grafana/provisioning/dashboards:/etc/grafana/provisioning/dashboards
|
||
- ./data/grafana/provisioning/datasources:/etc/grafana/provisioning/datasources
|
||
environment:
|
||
- GF_INSTALL_PLUGINS=grafana-clock-panel,grafana-simple-json-datasource
|
||
|
||
prometheus:
|
||
image: prom/prometheus:latest
|
||
container_name: grafana-prometheus-1
|
||
restart: always
|
||
command:
|
||
- --storage.tsdb.retention.time=7d
|
||
- --config.file=/etc/prometheus/prometheus.yml
|
||
ports:
|
||
- "8083:9090"
|
||
volumes:
|
||
- ./data/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml
|
||
|
||
node_exporter:
|
||
image: prom/node-exporter:latest
|
||
restart: always
|
||
ports:
|
||
- "8084:9100"
|
||
```
|
||
|
||
要注意 `user: "1000"` 這一行,這一行是你的 user ID,有可能會變,請用 `id -u` 確認一下。
|
||
|
||
# `datasources.yaml`
|
||
|
||
```yaml highlight:"6"
|
||
# datasources.yaml
|
||
apiVersion: 1
|
||
datasources:
|
||
- name: Prometheus
|
||
type: prometheus
|
||
url: http://192.168.1.24:8083
|
||
access: proxy
|
||
```
|
||
|
||
要注意 `url: http://192.168.1.24:8083` 這一行,要更新 IP 位置。
|
||
|
||
# `prometheus.yml`
|
||
|
||
```yaml highlight:"11"
|
||
# prometheus.yml
|
||
global:
|
||
scrape_interval: 15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
|
||
evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
|
||
# scrape_timeout is set to the global default (10s).
|
||
|
||
scrape_configs:
|
||
- job_name: 'node-exporter-local'
|
||
scrape_interval: 5s
|
||
static_configs:
|
||
- targets: ['192.168.1.24:8084']
|
||
```
|
||
|
||
要注意 `- targets: ['192.168.1.24:8084']` 這一行,要更新 IP 位置。
|