代码之家  ›  专栏  ›  技术社区  ›  Demaunt

添加docker容器作为grafana的数据源

  •  1
  • Demaunt  · 技术社区  · 7 年前

    我有四个docker容器在运行:

    docker ps
    CONTAINER ID        IMAGE                    COMMAND                  CREATED             STATUS              PORTS                                                                                NAMES
    97b1f0d98b1c        kamon/grafana_graphite   "/usr/bin/supervisord"   25 minutes ago      Up 25 minutes       80-81/tcp, 0.0.0.0:8125->8125/udp, 0.0.0.0:8126->8126/tcp, 0.0.0.0:40001->3000/tcp   kamon-grafana-dashboard
    79b9032b9ed4        engie_image              "nginx -g 'daemon ..."   3 hours ago         Up 3 hours          443/tcp, 0.0.0.0:8080->80/tcp                                                        engie_cont
    0a1fdd8b830c        piha_image               "docker-php-entryp..."   3 hours ago         Up 3 hours          9000/tcp                                                                             piha_cont
    61c8a4c80180        mysql:5.6                "docker-entrypoint..."   3 hours ago         Up 3 hours          0.0.0.0:33061->3306/tcp                                                              diba_cont
    

    2-4旨在启动默认的laravel项目,可通过以下方式访问: 本地主机:8080

    第一个容器取自此图像: https://hub.docker.com/r/kamon/grafana_graphite/

    我以用户身份登录grafana:admin pass:admin,转到添加数据源并获取错误: enter image description here

    为什么我不能添加可以从浏览器(Chrome)访问的URL(localhost:8080)作为数据源?

    1 回复  |  直到 7 年前
        1
  •  1
  •   Daniel Lee    7 年前

    首先要尝试的是更改对代理的访问权限。直接模式是直接从您的浏览器,您可能会得到一个CORS(跨原点)错误。默认为代理模式,直接模式仅适用于您希望将凭据从浏览器发送到数据源的特殊情况。

    您可以从grafana日志中获得真正的错误:

    1. 获取容器id(本例中为97b1f0d98b1c)
    2. docker exec -i -t 97b1f0d98b1c cat /var/log/supervisor/grafana-webapp.log

    1. 切换回直接模式。
    2. sudo ip addr show docker0 (我测试时是172.17.0.1)
    3. http://172.17.0.1:8080

    enter image description here