Quick Start (CLI)
A short intro in using Synpse through a command-line client
In this short quick-start tutorial we will prepare devices using the dashboard (as it generates a helpful command).

Step 1: Install CLI

First, you will need to install the CLI and get your access token using the dashboard. Follow instructions here.

Preparing devices

Step 2: Get device registration token

Create a new device token from the Provisioning section

Step 3: Install device agent

Once you have your account, install synpse agent on the device. To do that, you will first need to provision the device registration token. These tokens allow for a limited (or unlimited) amount of devices to register to the system.
Go to your device provisioning page and click on a "provision device" button. It should show you a command that already has your project and registration token prepared:
$ curl https://downloads.synpse.net/install.sh | \
AGENT_PROJECT=<YOUR PROJECT> \
AGENT_REGISTRATION_TOKEN=<YOUR TOKEN> \
bash
After a few seconds, you should be able to see the device in your terminal with synpse devices command:
$ synpse devices
NAME STATUS IP OS LABELS LAST SEEN CREATED
nuc online 192.168.178.86 Ubuntu arch:amd64 3 seconds ago 16 weeks ago
type:controller
You can repeat this process for as many devices as you have.

Deployment and management

Step 3: Deploy an application

Apps in Synpse are a set of containers. If you are coming from a Kubernetes background, think of an app as a Pod, if you used Docker Compose before - it's a very similar concept.
We provide a helper form to start your applications, however, we do suggest opting for a declarative yaml manifest. In this tutorial we will use one from our samples:
name: NodeRed
description: Low-code programming for event-driven applications
type: container
scheduling:
type: AllDevices
# Uncomment to use a specific device
# selectors:
# nodered: master
spec:
containers:
- name: nodered
image: nodered/node-red:latest-minimal
user: root
ports:
- "1880:1880"
volumes:
- /data/nodered:/data
- /etc/localtime:/etc/localtime
- /root/.ssh:/root/.ssh
When choosing an image, make sure that you have selected correct architecture. Some images do support multi-arch but it's not very common.
You can modify this manifest as you wish, for example setting different ports, volumes, etc. Let's expose Node-RED on a different port by modifying ports section to 1900:1880 in a file named nodered-synpse.yaml and run application create command:
synpse deploy -f nodered-synpse.yaml

Step 3: Monitor deployment

You can view running applications by using ps command:
synpse ps
Copy link
On this page
Step 1: Install CLI
Preparing devices
Step 2: Get device registration token
Step 3: Install device agent
Deployment and management
Step 3: Deploy an application
Step 3: Monitor deployment