Posts

Showing posts from 2019

Setting HypriotOS on a Raspberry PI 4 PicoCluster

A few weeks ago I ordered a PicoCluster for an upcoming learning project and blogpost series, to my surprise the entire setup wasn't straightforward. The bundled application set couldn't initially see each other node and neither connect to my Wi-Fi network, and after fiddling with the config I gave up on the default image. Having WiFi and Ethernet is important in the setup because I want download and run docker images, and each node can see each other through LAN. Some weeks before buying the cluster I took an Akka Training at Lunatech  where we saw how a similar cluster was used to show Akka Cluster, and having heard of HypriotOS and how easily it could run docker containers I decided to give a shot. Flashing The first step involves flashing the SD cards with Hypriot image, this guys provide a flash tool with convenient configuration parameters. For this step I'm using release 2.4.0, I'd to flash a card several times until I got the WLAN config correctly, mayb

Configuring applications with Docker

But it worked on my machine! I still remember when I was a young developer and someone introduced me to the environments where an application could be deployed: dev, test, acceptance, production. We as developers need to deal a lot with context, we deal with it on context switches, on variable scoping, and this is yet another context. We need to code our application so it can modify its parameters or behavior based on the place it’s running,  this type of input has roughly three forms: arguments, files and environment variables. 1 For which Docker provides several alternatives to accommodate for these different inputs. With Docker we can configure applications in two moments: during build time , or at runtime . The former includes the configuration right into the image, the latter is given when the container is instantiated. The code for this blogpost can be found here . Configuring at build time Arguments We can provide build arguments with the ARG statement inside the Dock