はじめに
Grafana は、監視およびオブザーバビリティのための主要なオープンソースプラットフォームです。どこに保存されていても、メトリクスをクエリ、可視化、アラート設定、理解することができます。Grafana を使用すると、ダッシュボードを作成、探索、共有し、チームでデータ主導の文化を育むことができます。
この実験では、Docker を使用して Grafana インスタンスを迅速かつ簡単にセットアップします。実験環境には、実行中の Prometheus コンテナが事前に設定されており、これがデータソースとして機能します。あなたの目標は、独自のコンテナに Grafana をインストールし、この Prometheus インスタンスに接続することです。これにより、将来のデータ可視化タスクの準備が整います。
Grafana Docker イメージのプル
このステップでは、Docker Hub から公式の Grafana Docker イメージをダウンロードします。Docker イメージはコンテナの設計図であり、アプリケーションとそのすべての依存関係を含んでいます。
docker pull コマンドは、レジストリからイメージを取得します。デフォルトでは Docker Hub が使用されます。ここでは、Grafana チームによってメンテナンスされている公式イメージである grafana/grafana イメージをプルします。
ターミナルで以下のコマンドを実行してください。
docker pull grafana/grafana
イメージの各レイヤーのダウンロード進捗状況を示す出力が表示されます。完了すると、イメージはローカルマシンに保存され、使用準備が整います。
Using default tag: latest
latest: Pulling from grafana/grafana
a48c500ed24e: Pull complete
...
...
Status: Downloaded newer image for grafana/grafana
docker.io/grafana/grafana
Grafana コンテナをポート 3000 で実行
このステップでは、Grafana イメージをコンテナとして実行します。指定されたイメージから新しいコンテナを作成および開始する docker run コマンドを使用します。
コンテナを設定するために、いくつかのフラグも使用します。
-d: コンテナをデタッチモード(バックグラウンド)で実行します。-p 8080:3000: ホストマシンのポート 8080 をコンテナのポート 3000 にマッピングします。これにより、ポート 3000 を既に利用しているサービスとの競合を避けつつ、ブラウザから Grafana Web UI にアクセスできるようになります。--name grafana: コンテナにカスタム名を割り当て、参照しやすくします。--network monitoring: コンテナをmonitoringネットワークに接続します。これは、この Grafana コンテナが Prometheus コンテナ(同じネットワーク上にある)とコンテナ名を使用して通信できるようにするために不可欠です。
Grafana コンテナを開始するには、次のコマンドを実行します。
docker run -d -p 8080:3000 --name grafana --network monitoring grafana/grafana
コマンドは長い文字列を出力します。これは新しく作成されたコンテナの一意の ID です。
a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4e5f6
docker ps コマンドを使用して、コンテナが実行中であることを確認できます。
docker ps
grafana コンテナが Up のステータスでリストされているはずです。
デスクトップインターフェース経由で Grafana Web UI にアクセス
このステップでは、ブラウザで Grafana の Web インターフェースにアクセスします。前のステップでポート 3000 をマッピングしたため、Grafana UI はローカルマシンで利用可能になりました。
LabEx VM のプロキシ設定により、デスクトップインターフェースに切り替え、左上隅の Firefox ブラウザをクリックし、アドレスバーにhttp://localhost:8080と入力してください。Grafana のログインページが表示されるはずです。

これにより、Grafana コンテナが正しく実行されており、アクセス可能であることが確認できます。
初回ログインとパスワード設定
このステップでは、初めて Grafana にログインします。Grafana では、セキュリティ上の理由から初回ログイン時にデフォルトのパスワードを変更する必要があります。
新しい Grafana インスタンスのデフォルトの認証情報は以下の通りです。
- ユーザー名:
admin - パスワード:
admin
前のステップで開いた Grafana ログインページで、ユーザー名とパスワードの両方のフィールドにadminと入力し、Log inボタンをクリックしてください。

新しいパスワードを作成するように求められます。「Skip」ボタンをクリックすることを推奨します。このラボ環境では、デフォルトの管理者パスワードを引き続き使用します。新しいパスワードを設定する場合は、後で Grafana にアクセスできなくなることを避けるために、必ず覚えておいてください。
ログイン後、Grafana のホームダッシュボードにリダイレクトされます。これでログインが完了し、Grafana の設定を行う準備が整いました。
Grafana に Prometheus をデータソースとして追加
このステップでは、ラボのセットアップの一部としてバックグラウンドで既に実行されている Prometheus インスタンスに Grafana を接続します。これにより、Grafana は Prometheus からメトリクスをクエリできるようになります。
Grafana UI 内で以下の手順に従ってください。
- 左側のメニューで、Connectionsアイコン(プラグまたはコネクタのようなアイコン)をクリックします。
- Connections ページで、Data sourcesをクリックします。
- Data sources ページで、Add new data sourceボタンをクリックします。
- 利用可能なデータソースタイプのリストから、Prometheusを選択します。

次に、接続設定を構成する必要があります。最も重要な設定は URL です。
- Prometheus server URLフィールドに、
http://prometheus:9090と入力します。

この URL が機能するのは、Grafana と Prometheus の両方のコンテナが同じ Docker ネットワーク(monitoring)に接続されているためです。Docker の内部 DNS により、同じネットワーク上のコンテナはコンテナ名(この場合はprometheus)で互いを解決できます。
URL を入力したら、ページの下部までスクロールし、Save & testボタンをクリックします。
Grafana は Prometheus サーバーへの接続を試みます。接続が成功すると、「Data source is working」という緑色の通知が表示されます。
これで、ガイドに従って Grafana の機能を探索できます。Prometheus をデータソースとして追加した後、左側のメニューにあるExploreをクリックしてみてください。ここでは、Prometheus データに対してクエリを実行し、結果をリアルタイムで視覚化できます。さまざまなクエリを試して、Grafana がメトリクスとどのように連携するかを把握してください!

まとめ
おめでとうございます!このラボを無事に完了しました。
このラボでは、Grafana と Docker を扱うための基本的なスキルをいくつか学びました。
- Docker Hub から公式 Docker イメージをプルする方法。
- 特定のネットワークおよびポート構成で Docker コンテナを実行する方法。
- コンテナ内で実行されている Web アプリケーションにアクセスする方法。
- 新しい Grafana インスタンスの初期セキュリティ設定を実行する方法。
- 共有 Docker ネットワーク内で Grafana を Prometheus データソースに接続する方法。
これで、データソースに接続された完全に機能する Grafana インスタンスが用意され、データを視覚化するための強力で洞察に満ちたダッシュボードの構築を開始する準備が整いました。



