- Open Wheels 2: an all-in-one board to control any of your robotic ProjectsPosted 1 day ago
- GuppY: Fishino becomes NanoPosted 2 weeks ago
- FISHINO becomes MegaPosted 3 weeks ago
- Discovering OpenSCAD – part 2: advanced functionsPosted 4 weeks ago
- How to make an OpenSource Vertical PlotterPosted 1 month ago
- Discovering OpenSCAD – part 1: basic functionsPosted 1 month ago
- Let’s transform Raspberry Pi into a performing and inexpensive Media CenterPosted 2 months ago
- COLIBRÌ: the driver for RGBW LEDsPosted 2 months ago
- Create a connected Fish Tank with FishinoPosted 2 months ago
- Buiding an arcade coin-op machine to rediscover the 80-90s with RetroPiePosted 2 months ago
Using Docker to run Node.js on a Raspberry Pi
Docker is a tool for using Linux containers, which are an interesting topic in and of themselves. In a nutshell, you can think about them as either very light weight virtual machines that can run side-by-side on a host machine at near-native speed. In actuality, Docker containers are not virtual machines at all, but processes which run in (nearly) complete isolation from other processes on the host machine, and carry with them the complete bundle of utilities and libraries to help that process run; basically, a pared down operating system just for your selected application.
As a Raspberry Pi tinkerer, this ease of replicating my environment had a lot of appeal, and working within the memory and processing constraints of a Raspberry Pi ruled out virtual machines as a means of doing it, so I wanted to see if I could get Docker up and running on my Raspberry Pi and then try it out.
The first challenge I came across, which will be obvious to anyone who has spent time with a Raspberry Pi, is that you’re going to need some patience. My old Raspberry Pi model B runs at 700 MHz and has only 512 MB of memory. Once upon a time, this would have seemed insanely fast, but as I’ve gotten used to having a considerably faster desktop and laptop at my disposal, let’s just say that building your containers may seem slow compared to what you’re used to.
The second challenge is also fairly obvious, but something worth keeping in mind. While you probably run an x86 processor on your computer, your Raspberry Pi’s processor uses an ARM chipset, so if you aren’t going to be able to copy a container from your main computer to your Pi and have it work. You can, of course, write your Dockerfile (the text file defining what goes into a container) locally and copy it over, and you can always model your container’s contents on a similar x86 container, but you’re going to have to actually build it on the Pi unless you happen to have a faster ARM-based computer sitting around.
The step-by-step guide and further ideas here: Using Docker to run Node.js on a Raspberry Pi