---
title: "How to Setup an IOTA Full Node Using Docker"
description: "Learn how to set up and run an IOTA IRI full node using Docker containers, with tips for configuration, neighbors, and monitoring."
keywords: "IOTA, Full Node, Docker, IRI, Tangle, Setup Guide, Tutorial"
url: "https://encircle360.com/en/blog/how-to-setup-iota-full-node-using-docker"
language: "en"
type: "article"
date: "2017-12-16"
reading_time_minutes: 8
categories: ["Cloud Native", "DevOps", "Tutorials & Guides"]
image: "https://cms.encircle360.com/assets/34da3a3d-1308-479b-90d1-c4187dd19378?width=1200&quality=80&format=webp"
author:
  name: "Patrick Hütter"
  role: "Founder & Software Architect"
  company: "encircle360 GmbH"
  url: "https://encircle360.com/en/blog?author=patrick-huetter"
  linkedin: "https://www.linkedin.com/in/patrickhuetter/"
publisher:
  name: "encircle360 GmbH"
  url: "https://encircle360.com"
  email: "hello@encircle360.com"
  phone: "+49 214 736999-80"
  address: "Petersbergstraße 72, 51375 Leverkusen, DE"
  linkedin: "https://www.linkedin.com/company/encircle360"
alternates:
  de: "https://encircle360.com/de/blog/how-to-setup-iota-full-node-using-docker"
citation: "Patrick Hütter (encircle360 GmbH): \"How to Setup an IOTA Full Node Using Docker\", 2017-12-16, https://encircle360.com/en/blog/how-to-setup-iota-full-node-using-docker"
---

# How to Setup an IOTA Full Node Using Docker

_By **Patrick Hütter**, Founder & Software Architect at [encircle360 GmbH](https://encircle360.com) · 16 December 2017 · 8 min read · Categories: Cloud Native, DevOps, Tutorials & Guides_

> A step-by-step guide on setting up an IOTA IRI full node using Docker, including configuration, neighbor discovery, and monitoring with IOTA Peer Manager.

We're glad to announce that we are now providing officially [IOTA](http://iota.org/) public nodes from Germany. Our nodes are in ALPHA stage and might restart or resync sometimes if we need to do maintenance. If that is the case just be patient or switch your wallet node temporarily.

Because our whole infrastructure is orchestrated via Docker and orchestration tools like [Rancher](https://rancher.com/) or [Kubernetes](https://kubernetes.io/), it wasn't easy to use the existing Docker image from IOTA's IRI (full node, IOTA Reference Implementation) because of the missing possibility to configure the container by Docker environment variables. So we decided to fork IRI and contribute a new configuration system and Docker image to the IOTA project. We hope that this will be merged into the official IRI repository soon. [Andreas Osowski](https://blog.iota.org/welcome-andreas-c-osowski-to-iota-5f1d8ef40194), core developer at the IOTA project, already confirmed that he will check our [pull request](https://github.com/iotaledger/iri/pull/404) in the next few days.

## Installing Docker

First you need Docker installed on your host. You can find good tutorials for all operating systems [here](https://docs.docker.com/engine/installation/). After you have a running Docker installation, you're able to use our IRI Docker image to run an IOTA full node.

## Starting the IOTA Full Node via Docker

To run a full node you have to find some neighbors which want to synchronize the Tangle database ([RocksDB](http://rocksdb.org/)) with you. You don't need neighbors the first time you start your node, but you should search for some after you are ready to have your node in production.

Using our Docker image it's possible to configure all configuration variables by Docker environment variables.

**IOTA full node (IRI) Docker image**

```bash
registry.gitlab.com/encircle360/iri:latest
```

You can use the _NEIGHBORS_ variable to configure your neighbors directly within your `docker run` command or orchestration tool. We also created some defaults so that the only thing you need is to configure the _NEIGHBORS_ variable and maybe some Java memory options using the _\_JAVA\_OPTIONS_ environment variable. You can find all possible configuration variables [here](https://gitlab.com/encircle360/iri/blob/master/src/main/resources/reference.conf).

**Run an IOTA full node via Docker**

```bash
docker run -e NEIGHBORS="udp://some-host.tld:14600 tcp://other-host.tld:15600" \
  registry.gitlab.com/encircle360/iri:latest
```

We recommend using an external volume for the RocksDB / Tangle database so that it is possible to restart and upgrade the node container.

**Run with persistent volume**

```bash
docker run \
  -v /path/to/your/local/db/directory:/iri/db \
  -e NEIGHBORS="udp://some-host.tld:14600 tcp://other-host.tld:15600" \
  registry.gitlab.com/encircle360/iri:latest
```

## Importing a Database Dump to Accelerate Syncing (Optional)

To speed up being ready to use your node, you can download and import a database dump instead of waiting for a full sync. IOTA.partners provides database snapshots you can download [here](http://db.iota.partners/IOTA.partners-mainnetdb.tar.gz).

After downloading the dump, unarchive it into your Tangle/RocksDB database directory or mount it as volume into `/iri/db` within your IRI Docker container. You should do this while IRI isn't running: stop the container, replace the directory, and start the container with the environment variable `REVALIDATE=true`. The revalidation is needed once after importing a foreign database dump. After it's done, remove the environment variable or set it to `false`.

## Inspecting the Node

To inspect the node and get some visual information whether your node is syncing with your neighbors, you can use IPM (IOTA Peer Manager). IPM uses the IRI HTTP API to collect statistics and visualize them. You can find it [here](https://github.com/akashgoswami/ipm).

![IOTA Peer Manager Dashboard](https://cms.encircle360.com/assets/dccff030-8716-4246-b85e-411629241557)

## Changelog

-   **19-12-2017** — Upgraded IRI to 1.4.1.4; new Docker image is also live (tag: latest)

---

## About the author

**Patrick Hütter** — Founder & Software Architect, encircle360 GmbH

Software architect, engineer and entrepreneur. Patrick has been building products and platforms for over a decade — from enterprise backends and cloud-native infrastructure to AI-powered applications. As founder of encircle360, he combines deep technical expertise with entrepreneurial vision, driving open source projects that create real impact.

[LinkedIn](https://www.linkedin.com/in/patrickhuetter/) · hello@encircle360.com

---

## About encircle360 GmbH

encircle360 is an owner-led software and AI company based in Leverkusen, Germany. We are a partner for professional software development and digital transformation — from discovery & strategy through product development and artificial intelligence to venture building.

- **Services:** [Discovery & Strategy](https://encircle360.com/en/services/discovery-strategy) · [Product Development](https://encircle360.com/en/services/product-development) · [Venture Building](https://encircle360.com/en/services/venture-building) · [Artificial Intelligence](https://encircle360.com/en/services/artificial-intelligence)
- **Contact:** hello@encircle360.com · +49 214 736999-80 · [encircle360.com](https://encircle360.com)
- **Address:** Petersbergstraße 72, 51375 Leverkusen, Germany
- **Social:** [LinkedIn](https://www.linkedin.com/company/encircle360) · [Xing](https://www.xing.com/pages/encircle360gmbh) · [X](https://x.com/encircle360com)

Source: [How to Setup an IOTA Full Node Using Docker](https://encircle360.com/en/blog/how-to-setup-iota-full-node-using-docker) — © encircle360 GmbH. When using or summarising this content, please credit encircle360 GmbH and link back to https://encircle360.com/en/blog/how-to-setup-iota-full-node-using-docker.

Every page of this website is also available as Markdown: append `.md` to the URL or send the header `Accept: text/markdown`. Index for agents: https://encircle360.com/llms.txt
