Deploy a node
A node is a managed service for pipelines and storage.
Install a node
Start at app.tenzir.com and click Add in the nodes pane. Then select your platform.
We provide Docker images and a Docker Compose file for a container setup. Install a node as follows:
- Enter a name for your node and click the download button to obtain the
docker-compose.NODE.yamlconfiguration file where
NODEis the name you entered for your node.
docker compose -f docker-compose.NODE.yaml up
Edit the Docker Compose file and change environment variables to adjust the configuration.
We offer a native deployment on various Linux distributions. Install a node as follows:
- Enter a name for your node and click the download button to obtain a
- Move the
<sysconfdir>/tenzir/plugin/platform.yamlso that the node can find it during startup where
/etc. See the configuration files documentation for more options.
- Run our installer to install a binary package on any Linux distribution:
curl https://get.tenzir.app | sh
The installer script asks for confirmation before performing the installation. If you prefer a manual installation you can also perform the installer steps yourself.
Download the latest Debian package and install it via
dpkg -i tenzir-static-amd64-linux.deb
nix run github:tenzir/tenzir/stable
Install Tenzir by adding
github:tenzir/tenzir/stable to your flake inputs, or
use your preferred method to include third-party modules on classic NixOS.
Download a tarball with our static binary for all Linux
distributions and unpack it into
tar xzf tenzir-static-x86_64-linux.tar.gz -C /
We also offer prebuilt statically linked binaries for every Git commit to the
curl -O https://storage.googleapis.com/tenzir-dist-public/packages/main/tarball/tenzir-static-main.gz
Please use Docker with Rosetta until we offer a native package.
Start a node
You can skip this step if you use Docker because
docker compose up
already starts a node for you.
tenzir-node executable to start a node:
_____ _____ _ _ ________ ____
|_ _| ____| \ | |__ /_ _| _ \
| | | _| | \| | / / | || |_) |
| | | |___| |\ |/ /_ | || _ <
|_| |_____|_| \_/____|___|_| \_\
Visit https://app.tenzir.com to get started.
This will spawn a blocking process that listens by default on the TCP endpoint
127.0.0.1:5158. Select a different endpoint via
--endpoint, e.g., bind to an
Some pipeline operators are inherently unsafe due to their side effects, e.g., reading from a file. When such operators run inside a node, you may involuntarily expose the file system to users that have access to the node, or when you connect the node to the Tenzir platform and manage it via app.tenzir.com. This may constitute a security risk.
We therefore forbid pipelines with such side effects by default. If you are
aware of the implications, you can remove this restriction by setting
tenzir.allow-unsafe-pipelines: true in the
tenzir.yaml of the respective
Stop a node
There exist two ways stop a server:
- Hit CTRL+C in the same TTY where you ran
- Send the process a SIGINT or SIGTERM signal, e.g., via
pkill -2 tenzir-node.
Sending the process a SIGTERM is the same as hitting CTRL+C.
Automate the deployment
Read our guides on automating the deployment of a node: