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:
1
$ curl https://downloads.synpse.net/install.sh | \
2
AGENT_PROJECT=<YOUR PROJECT> \
3
AGENT_REGISTRATION_TOKEN=<YOUR TOKEN> \
4
bash
Copied!
After a few seconds, you should be able to see the device in your terminal with synpse devices command:
1
$ synpse devices
2
NAME STATUS IP OS LABELS LAST SEEN CREATED
3
nuc online 192.168.178.86 Ubuntu arch:amd64 3 seconds ago 16 weeks ago
4
type:controller
Copied!
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:
1
name: NodeRed
2
description: Low-code programming for event-driven applications
3
type: container
4
scheduling:
5
type: AllDevices
6
# Uncomment to use a specific device
7
# selectors:
8
# nodered: master
9
spec:
10
containers:
11
- name: nodered
12
image: nodered/node-red:latest-minimal
13
user: root
14
ports:
15
- "1880:1880"
16
volumes:
17
- /data/nodered:/data
18
- /etc/localtime:/etc/localtime
19
- /root/.ssh:/root/.ssh
Copied!
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:
1
synpse deploy -f nodered-synpse.yaml
Copied!

Step 3: Monitor deployment

You can view running applications by using ps command:
1
synpse ps
Copied!
Last modified 1mo ago