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.
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:
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
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:
description: Low-code programming for event-driven applications
# Uncomment to use a specific device
# nodered: master
- name: nodered
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: