在Docker里跑datadog agent

可以運行以下命令

docker run -d --name dd-agent -v /var/run/docker.sock:/var/run/docker.sock:ro -v /proc/:/host/proc/:ro -v /sys/fs/cgroup/:/host/sys/fs/cgroup:ro -e DD_API_KEY=<YOUR_API_KEY> -e DD_SITE="us5.datadoghq.com" gcr.io/datadoghq/agent:7

以下是docker run命令的各個參數的解釋:

  • -d: 表示在後台運行容器。
  • --name dd-agent: 為容器指定一個名稱,本例中為dd-agent
  • -v /var/run/docker.sock:/var/run/docker.sock:ro: 掛載主機上的Docker守護進程的Unix套接字,以便容器可以獲取有關主機上運行的其他容器的信息。ro表示將套接字文件以只讀方式掛載到容器中。
  • -v /proc/:/host/proc/:ro: 掛載主機上的/proc目錄,以便容器可以訪問主機的進程信息。ro表示將該目錄以只讀方式掛載到容器中。
  • -v /sys/fs/cgroup/:/host/sys/fs/cgroup:ro: 掛載主機上的/sys/fs/cgroup目錄,以便容器可以訪問主機的cgroup信息。ro表示將該目錄以只讀方式掛載到容器中。
  • -e DD_API_KEY=: 設置Datadog API key,這裡留空,需要在運行容器之前將其替換為有效的API key。
  • -e DD_SITE="us5.datadoghq.com": 設置Datadog網站,這裡設置為Datadog US5網站。
  • gcr.io/datadoghq/agent:7: 指定要運行的Docker鏡像。本例中為Datadog Agent鏡像的版本7。

-e是Envirnoment, -v是volume的意思。

總之,這個命令的目的是在Docker中啟動Datadog Agent容器,並將所需的目錄和文件掛載到容器中,以便容器可以訪問主機上的資源和信息,並在容器中設置Datadog API key和網站。

怎樣更新Docker container里的datadog.yaml?

可以在原來的Docker image基礎上新建的一個image。在Dockerfile里加入

COPY datadog.yaml /etc/datadog-agent/datadog.yaml

Leave a Comment

Your email address will not be published.