Cannot start service prometheus: oci runtime error: container_linux.go:235: starting container process caused "container init exited prematurely"

Viewed 7669

Where am I going wrong when running this compose?

I would just like to upload this container with compose using persistent volume

Compose:

version: '3.1'

services:
  prometheus:
    image: prom/prometheus
    container_name: meta_prometheus
    volumes:
      - ./config:/etc/prometheus/prometheus.yml 
      - ./data:/prometheus/data
    command:
      - '--config.file=/etc/prometheus/prometheus.yml'
      - '--storage.tsdb.path=/prometheus/data'
    ports:
      - 9090:9090

Console:

[root@prometheus docker]# docker-compose up -d
Creating meta_prometheus ... error

ERROR: for meta_prometheus  Cannot start service prometheus: oci runtime error: container_linux.go:235: starting container process caused "container init exited prematurely"


ERROR: for prometheus  Cannot start service prometheus: oci runtime error: container_linux.go:235: starting container process caused "container init exited prematurely"

ERROR: Encountered errors while bringing up the project.
1 Answers

This part is wrong, as you're trying to mount a directory (./config) onto a file ... /etc/prometheus/prometheus.yml .. Which does not make sense..

volumes:
  - ./config:/etc/prometheus/prometheus.yml 

Maybe you wanted to write

volumes:
  - ./config/prometheus/prometheus.yml:/etc/prometheus/prometheus.yml 
Related