拉取镜像
# 此方式,即拉取最新的镜像,等同于 docker pull grafana/grafana:lastest
docker pull grafana/grafana
# 也可以拉取指定版本的
docker pull grafana/grafana:9.3.2
准备挂载目录和文件
# /Users/xxx/grafana/data 目录,准备用来挂载放置grafana的数据
# /Users/xxx/grafana/plugins 目录,准备用来放置grafana的插件
# /Users/xxx/grafana/config 目录,准备用来挂载放置grafana的配置文件
mkdir -p /Users/xxx/grafana/{data,plugins,config}
# 如果需要授权相关文件夹权限,可以参考下面的命令
chmod -R 777 /data/docker/grafana/data
chmod -R 777 //data/docker/grafana/dataplugins
chmod -R 777 /Users/xxx/grafana/config
准备配置文件
# 先临时启动一个容器
docker run --name grafana-tmp -d -p 3000:3000 grafana/grafana
# 将容器中默认的配置文件拷贝到宿主机上
docker cp grafana-tmp:/etc/grafana/grafana.ini /data/docker/grafana/config/grafana.ini
# 移除临时容器
docker stop grafana-tmp
docker rm grafana-tmp
# 修改配置文件(需要的话)
# vim /Users/xxx/grafana/config/grafana.ini
启动容器
# 启动grafana
# 环境变量GF_SECURITY_ADMIN_PASSWORD:指定admin的密码
# 环境变量GF_INSTALL_PLUGINS:指定启动时需要安装得插件
# grafana-clock-panel代表时间插件
# grafana-simple-json-datasource代表json数据源插件
# grafana-piechart-panel代表饼图插件
docker run -d \
-p 3000:3000 \
--name=grafana \
--restart always \
-v /etc/localtime:/etc/localtime:ro \
-v /data/docker/grafana/data:/var/lib/grafana \
-v /data/docker/grafana/plugins/:/var/lib/grafana/plugins \
-v /data/docker/grafana/config/grafana.ini:/etc/grafana/grafana.ini \
-e "GF_SECURITY_ADMIN_PASSWORD=admin" \
-e "GF_INSTALL_PLUGINS=grafana-clock-panel,grafana-simple-json-datasource,grafana-piechart-panel" \
grafana/grafana