![](/img/trans.png)
[英]Docker not found in Jenkins running locally in VM (not as a docker image)
[英]Prometheus not running on the vm but runs on Docker locally
我正在嘗試在虛擬機上運行prometheus。 我有幾個要監視的微服務,它們正在vm上運行。 我將以下內容添加到docker-compose.yml文件之一:
prometheus:
image: prom/prometheus:v2.1.0
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml
command:
- '--config.file=/etc/prometheus/prometheus.yml'
ports:
- '9090:9090'
然后將prometheus.yml文件添加到與上述docker-compose相同的文件夾中。
global:
scrape_interval: 15s
evaluation_interval: 15s
scrape_configs:
- job_name: 'prometheus'
static_configs:
- targets: ['localhost:9090']
- job_name: 'radios-service'
metrics_path: '/prometheus-metrics'
static_configs:
- targets: ['radios-service:8080']
- job_name: 'websocket-service'
metrics_path: '/prometheus-websocket'
static_configs:
- targets: ['websocket-service:8080']
這可以通過我的命令行在docker上成功運行,但是當我嘗試在vm上運行它時會拋出此錯誤:
錯誤:對於prometheus無法啟動服務prometheus:b'OCI運行時創建失敗:container_linux.go:348:啟動容器進程引起了“ process_linux.go:402:容器初始化引起了\\” rootfs_linux.go:58:安裝\\\\“ / usr /local/bin/prometheus.yml \\\\“轉換為rootfs \\\\” / var / lib / docker / overlay2 / f4b34c5866b191683d4e8c08e59fb14f56127cbcd67a603225954dd59c0a6a50 / merged \\\\“在\\\\” / var / lib / docker / overlay2 / f4b674e56a56e56a56e56a56a56e5a4e4a4e5c4e3e3c3e4c3e3e prometheus / prometheus.yml \\\\“導致\\\\”不是目錄\\\\“ \\”“:未知:您是否正在嘗試將目錄掛載到文件上(反之亦然)? 檢查指定的主機路徑是否存在以及是否為預期的類型'錯誤:啟動項目時遇到錯誤。
但是當我在本地運行它不會引發任何問題。 虛擬機中的問題可能是什么?
我通過在docker compose中編輯卷行來解決它。 我猜在Linux機器上,您需要提供絕對路徑。 我將prometheus.yml放在/ home /目錄中,並將路徑更改為如下所示:
prometheus:
image: prom/prometheus:v2.1.0
volumes:
- /home/prometheus.yml:/etc/prometheus/prometheus.yml
command:
- '--config.file=/etc/prometheus/prometheus.yml'
ports:
- '9090:9090'
這似乎有效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.