How to change influxdb storage location

3/15/2017

I have installed influxdb in docker container (Kubernetes) and I have mounted a persistent volume to that container. But influxdb is not writing data to that volume. Can anyone please tell me steps, so that influxdb will write data in particular volume. Thanks

-- Rohit Vyavahare
docker
influxdb
kubernetes

2 Answers

3/15/2017

Short Answer:

   $ docker run -p 8083:8083 -p 8086:8086 \
          -v $PWD:/var/lib/influxdb \
          influxdb

Modify $PWD with the path to external volume.

Long answer:

docker run -p 8083:8083 -p 8086:8086 influxdb

By default this will store the data in /var/lib/influxdb. All InfluxDB data lives in there. To make that a persistent volume (recommended):

$ docker run -p 8083:8083 -p 8086:8086 \
      -v $PWD:/var/lib/influxdb \
      influxdb

Modify $PWD to the directory where you want to store data associated with the InfluxDB container.

For example,

 $ docker run -p 8083:8083 -p 8086:8086 \
              -v /your/home:/var/lib/influxdb \
              influxdb

This will store the influx data in /your/home on the host.

-- vishnu narayanan
Source: StackOverflow

3/15/2017

If you pulled official influxdb image from docker library, the default path for data files is:

/var/lib/influxdb

To verify, Run an standalone instance:

docker run -p 8083:8083 -p 8086:8086 \
      -v $PWD:/var/lib/influxdb \
      influxdb

To check out the default config:

docker run --rm influxdb influxd config > influxdb.conf

Then use vim influxdb.conf

To run influxdb with custom config:

docker run -p 8086:8086 \
      -v $PWD/influxdb.conf:/etc/influxdb/influxdb.conf:ro \
      influxdb -config /etc/influxdb/influxdb.conf
-- Farhad Farahi
Source: StackOverflow