Docker Compose
一、认识
使用 Docker Compose
部署 Grafana
服务比直接使用 Docker
命令更加简洁和方便,尤其是在需要管理多个容器或配置复杂的环境时。通过 Docker Compose
,我们可以通过一个 YAML
文件来定义和管理多个容器服务及其配置。下面是基于 Docker Compose
部署 Grafana
服务的详细步骤。
二、目录结构
首先,创建一个工作目录用于存放 Grafana
配置文件和持久化存储数据。
grafana-docker/
│
├── config # 存放 Grafana 的配置文件。
└── data # 用于存储 Grafana 的持久化数据(如仪表板配置、日志等)。
三、操作
3.1 创建 Grafana 配置
如果你希望修改默认的 Grafana
配置,可以创建一个自定义的 grafana.ini
配置文件,并将其挂载到容器中。以下是一个简单的例子:
# grafana/config/grafana.ini
[server]
http_port = 3000 # 默认的 HTTP 端口
root_url = %(protocol)s://%(domain)s:%(http_port)s/ # 设置根 URL
[security]
admin_password = admin # 设置管理员密码
[auth.anonymous]
enabled = false # 禁用匿名登录
将该文件保存在 ~/grafana-docker/config/grafana.ini
路径下,然后在 docker-compose.yml
中挂载到容器。
3.2 创建 Compose 配置
在该目录中创建 docker-compose.yml
文件
services:
grafana:
image: grafana/grafana:latest
container_name: grafana
restart: always
ports:
- "3000:3000" # 映射主机端口 3000 到容器的 3000 端口
volumes:
- ./data:/var/lib/grafana # 持久化存储数据
- ./config/grafana.ini:/etc/grafana/grafana.ini # 可选:挂载自定义配置文件
environment:
GF_SECURITY_ADMIN_PASSWORD: 'admin' # 设置默认的 Grafana 管理员密码
networks:
- grafana_network
networks:
grafana_network:
driver: bridge
-
grafana
: 这是服务的名称,也就是我们创建的容器的名称。 -
image
: 使用grafana/grafana:latest
镜像,获取最新版本的Grafana
。 -
container_name
: 容器名称,方便管理和访问。 -
restart: always
: 配置容器始终重启,容器崩溃或Docker
重启时自动恢复。 -
ports
: 映射容器的端口3000
到主机的3000
端口,以便访问Grafana Web
界面。 -
volumes
: 持久化存储Grafana
数据和配置:-
将
./data
(宿主机目录)挂载到/var/lib/grafana
(容器目录),用于存储Grafana
的数据。 -
将
./config/grafana.ini
(宿主机自定义配置)挂载到/etc/grafana/grafana.ini
(容器的配置文件),如果你有自定义配置,可以使用。
-
-
environment
: 设置Grafana
的默认管理员密码。 -
networks
: 为Grafana
容器指定一个网络(grafana_network
),确保它与其他容器(如Prometheus
)能够通信。
3.3 启动服务
在 docker-compose.yml
文件和必要的目录准备完成后,使用以下命令来启动 Grafana
服务:
docker-compose up -d
此命令会启动 Grafana
服务并运行在后台。你可以通过访问 http://<host-ip>:3000
来访问 Grafana Web UI
。
四、访问
一旦容器启动,你可以通过浏览器访问 Grafana Web
界面:
http://<your-server-ip>:3000
默认的登录凭据是:
-
用户名:
admin
-
密码:
admin
登录后,建议你立即修改密码。
五、配置数据源
Grafana
启动后,你可以通过 Web UI
配置数据源。Grafana
支持多种数据源,如 Prometheus
、MySQL
、InfluxDB
等。以下是添加 Prometheus
数据源的步骤:
-
登录到
Grafana
。 -
点击左侧菜单栏的 齿轮 图标,选择
Data Sources
。 -
点击
Add data source
,然后选择Prometheus
。 -
在
HTTP
配置项中,填写Prometheus
的地址(例如http://localhost:9090
),然后点击Save & Test
测试连接。 -
配置完成后,你可以开始创建仪表盘,选择相应的图表和指标。