InfluxDB in Container - Expose 8088?

I am running InfluxDB in a docker container with:

docker run --init -d --name=influxdb -e TZ="America/New_York" -v /mnt/data/influxdb:/var/lib/influxdb -v /mnt/data/influxdb.backups:/Backups -v /etc/localtime:/etc/localtime:ro --restart=unless-stopped -p 8086:8086 -p 8088:8088 influxdb -config /etc/influxdb/influxdb.conf

I am trying to connect to it for backup purposes but cannot seem to connect to port 8088. I get refused to connect from just a simple telnet or the backup application.

From within the InfluxDB container, I can backup manually using influxd.

The config file has the bind-address = “127.0.0.1:8088”

Nothing in the docker logs about listening on port 8088. Only listening on 8086.

Am I missing something?

Thanks!

-Tim

Ok, so part of this was a stupid mistake but I want to include some extra information based on my research in case someone else has this issue as well.

So the stupid mistake was the path to the influxdb.conf. It was still using the generic file and not my edited one. Changed my docker command to:

docker run --init -d --name=influxdb -e TZ="America/New_York" -v /mnt/data/influxdb:/var/lib/influxdb -v /mnt/data/influxdb.backups:/Backups -v /etc/localtime:/etc/localtime:ro --restart=unless-stopped -p 8086:8086 -p 8088:8088 influxdb -config /var/lib/influxdb/influxdb.conf

I discovered this by logging in to the InfluxDB container (docker exec -it influxdb /bin/bash) then installing net-tools so I could see what was listening (using netstat) and saw that “127.0.0.1:8088” was listening. I had changed my config file to just “:8088” so it wasn’t localhost.

So, the other part of this is to change the config file for bind-address = “:8088” which listens on the available IP versus localhost. Localhost won’t work outside the container.

For people new to docker containers, here is what I did.

# this logs you into the bash shell of the influxdb container
docker exec -it influxdb /bin/bash

# this will install net-tools (includes netstat) in the container
apt-get update
apt-get install net-tools

# this will show you what is currently listening (what I originally saw)
netstat -tulpn | grep LISTEN
tcp        0      0 127.0.0.1:8088          0.0.0.0:*               LISTEN      6/influxd
tcp6       0      0 :::8086                 :::*                    LISTEN      6/influxd

# then after I fixed the config file as above, this is what I see now
netstat -tulpn | grep LISTEN
tcp6       0      0 :::8086                 :::*                    LISTEN      6/influxd
tcp6       0      0 :::8088                 :::*                    LISTEN      6/influxd

I am now able to connect remotely to port 8088.

-Tim

This topic was automatically closed 60 minutes after the last reply. New replies are no longer allowed.