Install InfluxDB 2 on Raspberry Pi

This guide shows how to install InfluxDB 2 on Raspberry Pi. InfluxDB is an open-source time-series database (TSDB). So, it is ideal to store sensor data with timestamps over a determined period of time.

Install InfluxDB 2 on Raspberry Pi

In previous tutorials, we showed you how to use InfluxDB cloud and send data from the ESP32 and ESP8266. The InfluxDB free cloud plan has some limitations that might not be suitable for your projects like the maximum 30-day data retention. If you want to have full control over your data, you can install InfluxDB on a local computer, like your Raspberry Pi.

The amount of data you can save will be limited to the storage of your Raspberry Pi, so make sure you use a microSD card with appropriate size storage.

Prerequisites

  1. MicroSD Card: The Pi doesn’t have built-in memory, so you’ll need a microSD card to install your OS. We’ll install the operating system on the microSD card. I recommend using a microSD card class 10 with at least 16GB of memory.
  2. Raspberry Pi 3 or Raspberry Pi 4
  3. 64-bit architecture—we’ll install Raspberry Pi OS (64-bit).

Install Raspberry Pi OS (64-bit)

InfluxDB 2 is only compatible with 64-bit architectures. So, you must be running Raspberry Pi OS (64-bit) or any other 64-bit OS (like Ubuntu, for example) to successfully install InfluxDB 2. Raspberry Pi OS (64-bit) is only compatible with Raspberry Pi 3 and 4.

Follow the next steps to install Raspberry Pi OS (64-bit).

1) Start by connecting the microSD card to your computer.

2) Go to the Raspberry Pi Software page.

3) Select and download the Raspberry Pi Imager (a tool to flash the OS on the microSD card) for your computer’s operating system.

Raspberry Pi Imager Download

4) Click on the downloaded file to install the Raspberry Pi Imager.

5) When the installation is complete, the Raspberry Pi Imager will open.

Raspberry Pi Imager Software

6) Click on Choose OS to select the Operating System. Select the Raspberry Pi OS (other) and then select Raspberry Pi OS (64-bit).

Raspberry Pi Imager Selecting Raspberry Pi OS 64-bit

7) Choose storage. You must choose the microSD card where you want to install the OS.

Raspberry Pi Imager Storage

8) The Raspberry Pi Imager allows you to access advanced settings to configure hostname, SSH, and Wi-Fi, among others—click on the gear icon to open advanced settings. If your window doesn’t show the gear icon, press CtrlShiftX to open the advanced setting window.

Install Raspberry Pi 64-bit Storage and OS selected

9) You can set hostname (the default will be raspberrypi), enable SSH, and set a password for SSH connection.

Raspberry Pi Imager Advanced Settings

10) Additionally, set up Wi-Fi with your local network credentials so that you can connect to your Raspberry Pi using Wi-Fi later on.

Raspberry Pi Advanced Settings

11) Set up your country and time zone. Finally, click Save.

Raspberry Pi Imager Advanced Settings

12) After selecting the operating system, storage, and advanced settings, click on write to start installing the operating system on the microSD card.

13) Wait a few seconds while it installs the Operating System.

14) When the installation is complete click on Continue. It will eject the microSD card safely.

15) Now, remove the card from your computer and insert it into your Raspberry Pi. Then, apply power to the Raspberry Pi to start it.

Install InfluxDB 2 on a Raspberry Pi

We’ll use SSH to communicate with the Raspberry Pi. If you’re using Windows, you can use a software like PuTTY. If you’re using Linux or Mac OS, you can use the Terminal.

If you don’t know how to establish an SSH connection with your Pi, check these instructions.

With an SSH connection established with your Raspberry Pi, run the following command (copy the complete command with CTRL-C and then paste it into the Terminal window with a right-click on the mouse).

wget -qO- https://repos.influxdata.com/influxdb.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/influxdb.gpg > /dev/null
export DISTRIB_ID=$(lsb_release -si); export DISTRIB_CODENAME=$(lsb_release -sc)
echo "deb [signed-by=/etc/apt/trusted.gpg.d/influxdb.gpg] https://repos.influxdata.com/${DISTRIB_ID,,} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list > /dev/null

sudo apt-get update && sudo apt-get install influxdb2

At some time, it will ask you to install additional packages. Press Y and hit Enter to accept. After installing, the Terminal window should look as follows:

InfluxDB Installed on Rpi

Type the following command to start InfluxDB as a background service on startup.

sudo service influxdb start

Run the following command to verify that InfluxDB is running as expected.

sudo service influxdb status

You should get something as follows:

InfluxDB running as a service

This means that InfluxDB is successfully running as a service.

Note: you may also want to check the official installation instructions here.

Accessing InfluxDB on Raspberry Pi

Now, you can access InfluxDB on your Raspberry Pi IP address port 8086. My Raspberry Pi IP address is 192.168.1.106, so to access InfluxDB, I just need to type the following in my web browser:

192.168.1.106:8086

To get your Raspberry Pi IP address, you can run the following command:

hostname -I

When you first access InfluxDB, you’ll see the following screen. Click on Get Started.

InfluxDB Get Started Screen

You’ll need to set up an initial user. Fill in the form details, you can use whatever names you want. You need to remember the username and password so that you can access InfluxDB data later on.

Then, click on Continue to proceed.

InfluxDB Get Started Screen create user

Then, you can click on Quick Start.

InfluxDB ready to go

You’ll be redirected to the Getting Started screen.

InfluxDB Getting Started Screen

Wrapping Up

Congratulations! You’ve successfully installed InfluxDB on your Raspberry Pi and set up an initial user, organization, and bucket.

You are now ready to load data to InfluxDB.

You can follow one of the next tutorials to get started loading data from the ESP32 or ESP8266 to InfluxDB:

Thanks for reading.



Build Web Server projects with the ESP32 and ESP8266 boards to control outputs and monitor sensors remotely. Learn HTML, CSS, JavaScript and client-server communication protocols DOWNLOAD »

Build Web Server projects with the ESP32 and ESP8266 boards to control outputs and monitor sensors remotely. Learn HTML, CSS, JavaScript and client-server communication protocols DOWNLOAD »


Enjoyed this project? Stay updated by subscribing our newsletter!

26 thoughts on “Install InfluxDB 2 on Raspberry Pi”

  1. post#3

    Another great way to use a pi headless, is using VNC. Up to five devices can be fully remotely used via the internet (Windows, linux, android, iphone, rpis, whatever…).
    Within the own network an home you can use as many devices as you want.
    VNC is preinstalled on any rpi os with desktop. A truly great tool!
    TEAMVIEWER also works very good, and some of the other remote tools.

    With them you can work on serveral pis as if they would have a dedicated screen. It works even via a slow Edge-Connection on an old remote rasperry pi zero.Clumsy, but it works. If you have a newer pi then you can work even with 64kBit/s reasonably.

    Reply
    • Thanks for sharing that.
      I never thought of using Teamviewer with the Raspberry Pi. But it is indeed a smart way to access the Raspberry Pi “screen”.
      Regards,
      Sara

      Reply
      • I first used TEAMVIEWER, but after a while they came along with “commercial usage”, which was not the case. I then switched to VNC. They left me alone and do my projects. I tested AnyDesk as well, and maybe this could be the best of all three in terms of features. E.g. the filetransfer function of AnyDesk is the best, and the user interface also. However the free version looks like crippleware. So, as a conclusion for makers, VNC is the best choice overall.

        Reply
  2. Influxdb does not install.
    I get message “404 not found [ip:13.225.195.48. 443]

    I tried several times but get same result.

    Reply
  3. Hi!

    Just to let you know that I did this tutorial but using an Ubuntu container in Proxmox instead of a physical Raspberry PI. I used container template “ubuntu-21.04-standard_21.04-1_amd64.tar”. The only situation is that the container does not have GPG installed, but you can use command “apt install gpg” to install it. Do this just before running the “wget …etc, etc” commands.

    As always, great and simple tutorial from RandomNerd!!!

    Reply
  4. Hello.
    I just want to ask if there will be influxDB2 and microPython with ESP. There are tutorials on GitHub, but I “drowned” in it :). I created an account in InfluxDB, I started in Thonny, and here I “stuck”. InfluxDB only locally. Thanks.

    Reply
    • Hi.
      I’m sorry, I didn’t understand what you mean.
      Do you want a similar tutorial using MicroPython?
      What examples did you experiment with?
      Regards,
      Sara

      Reply
  5. Circumvent the cloud

    From what I know, InfluxDB 2 can be installed on a vServer. However, even the cheapest one costs about 100 Eur/y.

    So, a way to publish InfluxDB Data in the Web via a free server would be great.

    Alternative: dygraphs
    dygraphs, is a charting alternative with almost no requirements. No database needed, the metrics an be stored in simple CSVs. This runs everywhere.

    However, it would be greate to have access to databases such as InfluxDB, SQLite, …
    With the proper code this would be possible.

    Reply
  6. Hi
    A complete newbie to InfluxDB here. I have InfluxDB successfully installed on my raspberry pi 4B. I however have a problem accessing the UI in the Pi browser to complete the set-up/configuration. I get a “404 page not found” error each time I load the address. I am able to get to the configuration file of InfluxDB but do not know what else to do. Can you please assist?

    Reply
    • Hi.
      What are you referring to? In our installation instructions, you don’t need to edit any configuration file.
      Regards,
      Sara

      Reply
  7. Im new to all of this but got raspberrypi installed and connected via SSH with Putty. When I try to run the first command for installing influxdb I and getting errors such as
    gpg: no valid OpenPGP data found. and E: Unable to locate package influxdb2. Any ideas what this issue is?

    Reply
        • Try it like this:

          Run the following commands sequentially to install InfluxDB

          wget -q https://repos.influxdata.com/influxdb.key

          echo '23a1c8836f0afc5ed24e0486339d7cc8f6790b83886c4c96995b88a061c5bb5d influxdb.key' | sha256sum -c && cat influxdb.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/influxdb.gpg > /dev/null

          echo 'deb [signed-by=/etc/apt/trusted.gpg.d/influxdb.gpg] https://repos.influxdata.com/debian stable main' | sudo tee /etc/apt/sources.list.d/influxdata.list

          sudo apt-get update && sudo apt-get install influxdb2

          When prompted, press Y and hit Enter.

          Start InfluxDB by running the following command:

          sudo service influxdb start

          Check if InfluxDB is running:

          sudo service influxdb status

          Let me know if this works.

          Reply

Leave a Comment

Download Our Free eBooks and Resources

Get instant access to our FREE eBooks, Resources, and Exclusive Electronics Projects by entering your email address below.