Skip to content

A dockerized middleware server based on NGIX Unit that transforms and exchanges data between an IoT device and Verizon

License

Notifications You must be signed in to change notification settings

justins-engineering/loft

Repository files navigation

Loft

A middleware server and Docker Image based on NGIX Unit that exchanges data between IoT devices and Verizon Thingspace using Verizon's ThingSpace Connectivity Management API.

Development

Recomendations

  • VSCode
    • Build & run tasks are included
    • Configured to use Clang-Tidy
  • Docker Buildx

Setup

./init.sh

This script inits, updates, and resets the git submodules. It then runs bundle && bun install on the front-end submodule, and finally it runs make clean && make.

Build

./build.sh

build.sh Flags:

  • p: prune Docker containers, images, and buildx cache after build
  • r: runs the docker container after building with the options --rm -p 80:80 --name loft_dev
  • d: Adds the docker build option --build-arg debug=true
    • Adds vim to the built image
    • Adds the aliases ls='ls -F --color=auto' & grep='grep -nI --color=auto' to /root/.bashrc
    • Builds unitd & libunit.a with the --debug optiion
  • m: Builds Dockerfile.minsize; not recomended for development as it offers far less caching

Running

docker run --rm -p 80:80 --name loft_dev loft:dev

The server will be viewable at http://localhost:80

Docker container shell

docker exec -it loft_dev /bin/bash

About

A dockerized middleware server based on NGIX Unit that transforms and exchanges data between an IoT device and Verizon

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published