# Hypriot

Recent content on Docker Pirates ARMed with explosive stuff

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Releasing HypriotOS 1.11.0: Docker 19.03.0 CE from Raspberry Pi Zero to 4 B

DevFeed: [Releasing HypriotOS 1.11.0: Docker 19.03.0 CE from Raspberry Pi Zero to 4 B](<https://devfeed.tech/articles/releasing-hypriotos-1-11-0-docker-19-03-0-ce-from-raspberry-pi-zero-to-4-b-29473.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/releasing-HypriotOS-1-11/>)

Published: 2019-07-25T04:31:00Z

Content type: release

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Docker](<https://devfeed.tech/topics/docker.md>), [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>), [releases](<https://devfeed.tech/topics/releases.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Linux Kernel](<https://devfeed.tech/topics/linux-kernel.md>), [Release notes](<https://devfeed.tech/topics/release-notes.md>)

Tags: [configuration](<https://devfeed.tech/tags/configuration.md>), [docker](<https://devfeed.tech/tags/docker.md>), [flashing](<https://devfeed.tech/tags/flashing.md>), [linux](<https://devfeed.tech/tags/linux.md>), [linux-kernel](<https://devfeed.tech/tags/linux-kernel.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>), [release](<https://devfeed.tech/tags/release.md>), [release-notes](<https://devfeed.tech/tags/release-notes.md>), [security](<https://devfeed.tech/tags/security.md>), [ssh](<https://devfeed.tech/tags/ssh.md>), [swarm](<https://devfeed.tech/tags/swarm.md>), [wi-fi](<https://devfeed.tech/tags/wi-fi.md>)

### AI overview

HypriotOS 1.11.0 is released with Docker Engine 19.03.0 CE, including Swarm Mode, support for Raspberry Pi models from the Zero through the Raspberry Pi 4 B, an updated Raspbian Lite Buster base with Linux kernel 4.19.58, improved flashing and configuration, Wi-Fi setup during boot, Avahi service discovery, and enhanced default security.

### Source excerpt

We're proud to announce our 1.11.0 release of HypriotOS - the fastest way to get Docker up and running on any Raspberry Pi. Features of HypriotOS Latest Docker Engine 19.03.0 Community Edition You can use the latest features of the freshly-baked Docker Engine 19.03.0 that is still warm. It includes the Swarm Mode, which allows high availability of services in a multi-node cluster within just a few simple commands. Up to date with Raspbian Lite Buster You can run HypriotOS with an up-to-date OS and Linux kernel which is in sync with the current Raspbian Lite Buster running a Linux kernel 4.19.58. Support for the complete Raspberry Pi family You can run HypriotOS on every model of the Raspberry Pi family - we're supporting Pi 1, 2, 3, the 3 B+, Zero and even the Compute Module and the new Raspberry Pi 4 B. Easy flashing and configuration We improved our flash tool, which puts HypriotOS onto a SD card that is ready to boot from with a single command. With additional command line options you can customize HypriotOS during the flash operation to have the best out-of-the-box first-boot experience. HypriotOS includes cloud-init, which makes the first boot of your Raspberry Pi customizable and you even are able connecting it to your Wi-Fi network during boot. After booting, you can find the Raspberry Pi at your network with a simple ping black-pearl.local - no more searching for IP addresses required thanks to the integrated Avahi service discovery. Enhanced security out of the box We think that security should be shipped out-of-the-box. We make HypriotOS more secure without you even noticing it. For instance, there is no built-in "root" user. Also, the default user "pirate" (password "hypriot") is can be customized or removed before the first boot. Just look at the file /boot/user-data. You can add your public SSH key, disable password logins and specify a different user account before you even boot your Raspberry Pi. WiFi can be customized and enabled to have Docker up an

## NVIDIA Jetson Nano - Docker optimized Linux Kernel

DevFeed: [NVIDIA Jetson Nano - Docker optimized Linux Kernel](<https://devfeed.tech/articles/nvidia-jetson-nano-docker-optimized-linux-kernel-29468.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/nvidia-jetson-nano-build-kernel-docker-optimized/>)

Published: 2019-05-04T01:57:21Z

Content type: tutorial

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Jetson](<https://devfeed.tech/topics/jetson.md>), [Linux Kernel](<https://devfeed.tech/topics/linux-kernel.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [k3s](<https://devfeed.tech/topics/k3s.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [networking](<https://devfeed.tech/topics/networking.md>), [Ubuntu](<https://devfeed.tech/topics/ubuntu.md>)

Tags: [build-system](<https://devfeed.tech/tags/build-system.md>), [developer](<https://devfeed.tech/tags/developer.md>), [docker](<https://devfeed.tech/tags/docker.md>), [jetson](<https://devfeed.tech/tags/jetson.md>), [k3s](<https://devfeed.tech/tags/k3s.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [linux-kernel](<https://devfeed.tech/tags/linux-kernel.md>), [networking](<https://devfeed.tech/tags/networking.md>), [robotics](<https://devfeed.tech/tags/robotics.md>), [ubuntu](<https://devfeed.tech/tags/ubuntu.md>)

### AI overview

This tutorial explains how to customize and build a Linux kernel directly on the NVIDIA Jetson Nano DevKit. It focuses on adding kernel settings, including IPVLAN, needed for networking with Docker Swarm, Kubernetes, and k3s, and covers preparing the build environment and downloading the kernel sources.

### Source excerpt

Despite the fact that the NVIDIA Jetson Nano DevKit comes with Docker Engine preinstalled and you can run containers just out-of-the-box on this great AI and Robotics enabled board, there are still some important kernel settings missing to run Docker Swarm mode, Kubernetes or k3s correctly. So, let's try to fix this... Analyzing the Linux Kernel In my last blogpost Verify your Linux Kernel for Container Compatibility, I already shared all the details how you can easily verify the Linux kernel for all Container related kernel settings. So, this first part of analyzing the capabilities of the stock Linux kernel 4.9.x provided by NVIDIA is already done and documented. And this was an easy task as well, so everyone who's interested in these details can repeat the task at his/her own device. Let's recap what we did found. Especially there is one important setting which will be used for networking. This feature called "IPVLAN", is required for Docker Swarm mode and it's also used for networking in Kubernetes and k3s. Building your own Linux Kernel Anyway, even when we'd like to include or change only a single kernel setting, we have to customize the kernel configuration and have to compile and build our own Linux kernel. This is typically a common task for a desktop Linux system, but can be pretty ugly and cumbersome if you have to build the kernel for an Embedded Device. When we look back to all the other NVIDIA Jetson boards, like the TK1, TX1 and TX2, this requires a second Linux machine, running Ubuntu 14.04 or 16.04 on an Intel CPU. Then setting up a complete build system for cross-compiling and all these stuff. Honestly, this is a well-known approach for an Embedded Developer, but the good thing now for the Jetson Nano DevKit this is not required any more. Here the good news: you can customize and build your own Linux kernel directly on the Jetson Nano DevKit! You only need an internet connection and some time to perform all steps on your own. BTW, and this is another

## Verify your Linux Kernel for Container Compatibility

DevFeed: [Verify your Linux Kernel for Container Compatibility](<https://devfeed.tech/articles/verify-your-linux-kernel-for-container-compatibility-29476.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/verify-kernel-container-compatibility/>)

Published: 2019-04-28T15:48:50Z

Content type: tutorial

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Linux Kernel](<https://devfeed.tech/topics/linux-kernel.md>), [Containers](<https://devfeed.tech/topics/containers.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [Bash](<https://devfeed.tech/topics/bash.md>), [Script](<https://devfeed.tech/topics/script.md>), [systems](<https://devfeed.tech/topics/systems.md>), [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [chmod](<https://devfeed.tech/tags/chmod.md>), [command](<https://devfeed.tech/tags/command.md>), [containers](<https://devfeed.tech/tags/containers.md>), [docker](<https://devfeed.tech/tags/docker.md>), [github](<https://devfeed.tech/tags/github.md>), [linux](<https://devfeed.tech/tags/linux.md>), [linux-kernel](<https://devfeed.tech/tags/linux-kernel.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>), [script](<https://devfeed.tech/tags/script.md>)

### AI overview

This tutorial explains how to check whether a Linux kernel has the settings required for running containers, with particular attention to embedded devices. It demonstrates the Docker/Moby check-config.sh Bash script, which tests a running kernel or a kernel .config file and can support remote verification.

### Source excerpt

Are you sure whether your Linux kernel is able to run Containers in an optimal way, or if there are still some missing kernel settings which will lead to some strange issues in the future? Normally you don't have to bother about this question. When you're using Docker and Containers on a modern Linux system or on a public cloud offering, this has been already optimized by the Linux distribution or your cloud provider. But when you start using Containers on Embedded Devices you should verify this carefully. So, let's learn how easy it is to verify it by yourself... How can I verify the Linux Kernel for Container Compatibility? Typically this is really an easy task, as soon as you know the right tools. For running Containers you'll need some basic settings applied to your Linux kernel. Some settings are mandatory and some others are optional and only used for specific use cases. But let's see how we can use the right tools. At the Docker open source project you can find a great bash script which does all these tests on your Linux kernel configuration and tells you within a few seconds all the required details. The script is able to read the kernel config live from a running kernel or directly from a kernel .config file as well. Now you can imagine you can verify the container compatibility also from a remote device. Download check-config.sh script Let's download the bash script check-config.sh directly from the Moby project (yes, this is the new name for the Docker open source project). $ wget https://github.com/moby/moby/raw/master/contrib/check-config.sh $ chmod +x check-config.sh Verify the Linux Kernel directly If you have your Linux system available you can download and run the script directly without any parameters. $ ./check-config.sh Then you'll get a detailled output with all kernel settings which are important for running containers. If you want to verify a kernel from a remote system, you could also first extract the Linux kernel config on this system and ana

## Docker Engine on Intel Linux runs Arm Containers

DevFeed: [Docker Engine on Intel Linux runs Arm Containers](<https://devfeed.tech/articles/docker-engine-on-intel-linux-runs-arm-containers-29465.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/docker-intel-runs-arm-containers/>)

Published: 2019-04-27T17:48:50Z

Content type: tutorial

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Docker](<https://devfeed.tech/topics/docker.md>), [Containers](<https://devfeed.tech/topics/containers.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Emulator](<https://devfeed.tech/topics/emulator.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [Bash](<https://devfeed.tech/topics/bash.md>), [Internet of things](<https://devfeed.tech/topics/iot.md>)

Tags: [arm](<https://devfeed.tech/tags/arm.md>), [bash](<https://devfeed.tech/tags/bash.md>), [cli](<https://devfeed.tech/tags/cli.md>), [containers](<https://devfeed.tech/tags/containers.md>), [docker](<https://devfeed.tech/tags/docker.md>), [emulator](<https://devfeed.tech/tags/emulator.md>), [linux](<https://devfeed.tech/tags/linux.md>), [qemu](<https://devfeed.tech/tags/qemu.md>), [time](<https://devfeed.tech/tags/time.md>)

### AI overview

A tutorial explains how to run Arm-based Docker containers on an Intel-based Linux system. It uses Qemu emulators registered in the Linux kernel so the Linux loader can run Arm and Arm64 binaries.

### Source excerpt

Did you read the latest news from Docker about their newly announced technology partnership together with Arm, "Docker and Arm Partner to Deliver Frictionless Cloud-Native Software Development and Delivery Model for Cloud, Edge, and IoT"? This is really a great ground-breaking news, as it will enable an improved development workflow. Build and test all your Arm containers on your Intel-based laptop or workstation. These new Arm capabilities will be available in Docker Desktop products from Docker, both for MacOs and Windows, and for Docker's commercial enterprise offerings. First technical details and roadmap will be announced next week at DockerCon 2019 in San Francisco, so please stay tuned. But wait, what about all the users who are directly working on a pure Linux environment? Well, here is the good news, the basic technology you need is already available and ready-to-use for you. Yes, you could use it right away! Let's start it now... Run an Arm Container with Docker Engine on Intel I don't want to hold you back and bore you with a lot of background details, so I'm going to show you how easy it is today. First, let's start with a default Docker Engine installed on an Intel-based Linux system. For the sake of simplicity I'd like to show it directly on the Katacoda Training Platform, then you are able to replay it without spending too much time. It just takes you a few seconds to spin up a complete Linux Docker environment, just a few click away. Step 1: Start the Docker Tutorial Next you have to click on "START SCENARIO" and the Linux Docker environment is ready for you. Step 2: Run an Arm-based Container In the bottom right box you'll find a Linux Terminal window where you can issue your CLI commands. It's a real Linux bash shell you can control through your browser and Docker is already installed on this machine. As soon as we try to start an Arm-based Docker container, $ docker run -it dieterreuter/alpine-arm64:3.9 we'll get an cryptic error message exec user p

## NVIDIA Jetson Nano - Upgrade Docker Engine

DevFeed: [NVIDIA Jetson Nano - Upgrade Docker Engine](<https://devfeed.tech/articles/nvidia-jetson-nano-upgrade-docker-engine-29471.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/nvidia-jetson-nano-upgrade-docker/>)

Published: 2019-04-22T06:44:52Z

Content type: tutorial

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Docker](<https://devfeed.tech/topics/docker.md>), [Jetson](<https://devfeed.tech/topics/jetson.md>), [upgrade](<https://devfeed.tech/topics/upgrade.md>), [Ubuntu](<https://devfeed.tech/topics/ubuntu.md>), [Development](<https://devfeed.tech/topics/development.md>)

Tags: [docker](<https://devfeed.tech/tags/docker.md>), [jetson](<https://devfeed.tech/tags/jetson.md>), [nvidia](<https://devfeed.tech/tags/nvidia.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [ubuntu](<https://devfeed.tech/tags/ubuntu.md>), [upgrade](<https://devfeed.tech/tags/upgrade.md>)

### AI overview

A tutorial explains how to upgrade the Docker Engine on the NVIDIA Jetson Nano Developer Kit. It starts with Docker 18.06.1-CE and describes using Ubuntu's apt package manager to upgrade to Docker 18.09.2 from the Ubuntu repository.

### Source excerpt

In our last blogposts about the NVIDIA Jetson Nano Developer Kit - Introduction and NVIDIA Jetson Nano - Install Docker Compose we digged into the brand-new NVIDIA Jetson Nano Developer Kit and we know, that Docker 18.06.1-CE is already installed, but... But, this isn't the latest available version of the Docker Engine. So, I'd like to point you to a few different options on how to upgrade the Docker Engine to the very latest available version for the NVIDIA Jetson Nano. Check the current Docker Version For this tutorial I'm starting again with a freshly flashed SD card image. Flashing from macOS just takes a few minutes with the Hypriot flash utility, which can be found here https://github.com/hypriot/flash. $ time flash --device /dev/disk2 jetson-nano-sd-r32.1-2019-03-18.img Is /dev/disk2 correct? y Unmounting /dev/disk2 ... Unmount of all volumes on disk2 was successful Unmount of all volumes on disk2 was successful Flashing jetson-nano-sd-r32.1-2019-03-18.img to /dev/rdisk2 ... 12.0GiB 0:03:40 [55.8MiB/s] [=======================================================================================>] 100% 0+196608 records in 0+196608 records out 12884901888 bytes transferred in 220.275160 secs (58494575 bytes/sec) Mounting Disk real 3m47.866s user 0m1.648s sys 0m30.921s Next we have to attach a computer monitor via HDMI cable, mouse and keyboard and of course an Ethernet cable in order to get an internet connect. Now connecting to a micro-USB power supply and follow the instruction on the screen to perform the initial setup of the NVIDIA Jetson Nano Developer Kit. This will take around 5 to 10 minutes and we do have a new Ubuntu 18.04 desktop running on that nice 64bit ARM Cortex-A57 developer board. Pro-Tip on using Docker client: As we have seen in the last blogpost, we have to use sudo when we're calling a docker command in the shell. This can be easily resolved, we only have to issue the following command ones. pirate@jetson-nano:~$ sudo usermod -aG docker pirate Ne

## NVIDIA Jetson Nano - Install Docker Compose

DevFeed: [NVIDIA Jetson Nano - Install Docker Compose](<https://devfeed.tech/articles/nvidia-jetson-nano-install-docker-compose-29469.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/nvidia-jetson-nano-install-docker-compose/>)

Published: 2019-04-20T07:51:52Z

Content type: tutorial

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Docker Compose](<https://devfeed.tech/topics/docker-compose.md>), [Jetson](<https://devfeed.tech/topics/jetson.md>), [Python](<https://devfeed.tech/topics/python.md>), [Ubuntu](<https://devfeed.tech/topics/ubuntu.md>), [Docker](<https://devfeed.tech/topics/docker.md>)

Tags: [apt](<https://devfeed.tech/tags/apt.md>), [curl](<https://devfeed.tech/tags/curl.md>), [docker-compose](<https://devfeed.tech/tags/docker-compose.md>), [install](<https://devfeed.tech/tags/install.md>), [jetson](<https://devfeed.tech/tags/jetson.md>), [nvidia](<https://devfeed.tech/tags/nvidia.md>), [python](<https://devfeed.tech/tags/python.md>), [ssh](<https://devfeed.tech/tags/ssh.md>), [terminal](<https://devfeed.tech/tags/terminal.md>), [ubuntu](<https://devfeed.tech/tags/ubuntu.md>)

### AI overview

This tutorial explains how to install Docker Compose on an NVIDIA Jetson Nano ARM 64-bit board when no direct Docker Compose binary is available. It verifies Python, installs pip and required build dependencies, and installs Docker Compose 1.24.0 via Python pip.

### Source excerpt

In our last blogpost NVIDIA Jetson Nano Developer Kit - Introduction we digged into the brand-new NVIDIA Jetson Nano Developer Kit and we did found out, that Docker 18.06.1-CE is already pre-installed on this great ARM board. Today, I want to share some more details on how you can easily install Docker Compose on the Jetson Nano. Install Docker Compose Sadly, there is no binary of Docker Compose available we could install directly on an ARM 64bit board like the NVIDIA Jetson Nano. If we are looking at the official GitHub release page for Docker Compose https://github.com/docker/compose/releases/tag/1.24.0 there are only binaries provided for Intel x86-64 based operating systems like Linux, macOS and Windows - but nothing for ARM 32bit or 64bit systems. This isn't too bad, because Docker Compose is based upon Python and maybe it's easier to install if Python is already available on our board. So, let's check this out the easy way. Docker Compose is based upon Python First, check out if Python is already available on the Jetson Nano. As we have a complete Ubuntu 18.04 LTS desktop operation system this is very likely. But let's verify it directly on a shell running on the Nano. This can be done from the desktop terminal app or via a SSH shell. pirate@jetson-nano:~$ python --version Python 2.7.15rc1 OK, this looks pretty promising. We do have the Python version 2.7.15rc1 already installed on the Nano. Let's try to install Docker Compose via Python PIP. So, first we need to install Python PIP itself. # first, we have to install Python PIP $ sudo apt-get update -y $ sudo apt-get install -y curl $ curl -sSL https://bootstrap.pypa.io/get-pip.py | sudo python # verify the installed Python PIP version pirate@jetson-nano:~$ pip --version pip 19.0.3 from /usr/local/lib/python2.7/dist-packages/pip (python 2.7) Now, let's try to install Docker Compose via Python PIP. Here we're going to pin the latest version of Docker Compose, which is 1.24.0 of the time of writing this blogpost

## NVIDIA Jetson Nano Developer Kit - Introduction

DevFeed: [NVIDIA Jetson Nano Developer Kit - Introduction](<https://devfeed.tech/articles/nvidia-jetson-nano-developer-kit-introduction-29470.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/nvidia-jetson-nano-intro/>)

Published: 2019-04-19T12:16:25Z

Content type: tutorial

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Jetson](<https://devfeed.tech/topics/jetson.md>), [Nvidia](<https://devfeed.tech/topics/nvidia.md>), [Arm](<https://devfeed.tech/topics/arm.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Docker](<https://devfeed.tech/topics/docker.md>)

Tags: [developer](<https://devfeed.tech/tags/developer.md>), [devkit](<https://devfeed.tech/tags/devkit.md>), [docker](<https://devfeed.tech/tags/docker.md>), [flashing](<https://devfeed.tech/tags/flashing.md>), [github](<https://devfeed.tech/tags/github.md>), [hdmi](<https://devfeed.tech/tags/hdmi.md>), [jetson](<https://devfeed.tech/tags/jetson.md>), [macos](<https://devfeed.tech/tags/macos.md>), [nvidia](<https://devfeed.tech/tags/nvidia.md>), [robotics](<https://devfeed.tech/tags/robotics.md>)

### AI overview

An introduction to the NVIDIA Jetson Nano Developer Kit covering its hardware, required accessories, SD card flashing, and initial configuration. The article recommends using a 32 or 64 GB SD card because the compressed image is about 5 GB and the uncompressed image is about 12 GB.

### Source excerpt

Let me introduce the brand new NVIDIA Jetson Nano Developer Kit, which is basically a quad-core 64bit ARM Cortex-A57 CPU with 128 GPU cores - suitable for all kinds of maker ideas: AI, Robotics, and of course for running Docker Containers... Unboxing Let's unbox the board and do the initial configuration... When opening the box we'll find the board itself and a short getting started flyer which heads us to the NVIDIA website https://NVIDIA.com/JetsonNano-Start where we can find all basic information about the new DevKit. Please note, there are no other parts included in the DevKit. So, in order to use the DevKit you'll need some additional accessories: MicroSD card (at least 16GByte) Monitor with HDMI or DisplayPort connector HDMI or DisplayPort cable to connect to the monitor USB Keyboard and Mouse Micro-USB power supply (5V, 2Amps for 10 watts) Getting Started Following the official documentation Getting Started With Jetson Nano Developer Kit we have to download and flash the SD card. I don't want to repeat these basic steps here, because it's covered in great detail directy in the official NVIDIA tutorial Write Image to the microSD Card. When downloading the SD card image, please be aware this one isn't small at all. The download is a zipped image file of 5 GByte of compressed data. $ ls -alh jetson-nano-sd-r32.1-2019-03-18.zip -rw-r--r--@ 1 dieter staff 5.3G Mar 15 22:49 jetson-nano-sd-r32.1-2019-03-18.zip The SD card image is a huge 12 GByte data blob. I would strongly recommend to use a SD card size with at least 32 GByte, with the recommended 16 GByte minimum you won't get really happy. So, please do yourself a favour and get a 32 or 64 GByte SD card. $ ls -alh jetson-nano-sd-r32.1-2019-03-18.img -rwxr-xr-x 1 dieter staff 12G Mar 15 19:19 jetson-nano-sd-r32.1-2019-03-18.img For flashing the SD card image you could also use the Hypriot flash tool, which can be found here https://github.com/hypriot/flash. That's exactly what I did from macOS. $ flash --device /dev/

## Releasing HypriotOS 1.10.0: Docker 18.06.3 CE from Raspberry Pi Zero to 3 B+

DevFeed: [Releasing HypriotOS 1.10.0: Docker 18.06.3 CE from Raspberry Pi Zero to 3 B+](<https://devfeed.tech/articles/releasing-hypriotos-1-10-0-docker-18-06-3-ce-from-raspberry-pi-zero-to-3-b-29472.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/releasing-HypriotOS-1-10/>)

Published: 2019-02-24T14:01:00Z

Content type: release

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Docker](<https://devfeed.tech/topics/docker.md>), [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>), [releases](<https://devfeed.tech/topics/releases.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Security](<https://devfeed.tech/topics/security.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [ssh](<https://devfeed.tech/topics/ssh.md>), [Wi-Fi](<https://devfeed.tech/topics/wi-fi.md>)

Tags: [boot](<https://devfeed.tech/tags/boot.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [docker](<https://devfeed.tech/tags/docker.md>), [high-availability](<https://devfeed.tech/tags/high-availability.md>), [linux](<https://devfeed.tech/tags/linux.md>), [linux-kernel](<https://devfeed.tech/tags/linux-kernel.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>), [release](<https://devfeed.tech/tags/release.md>), [release-notes](<https://devfeed.tech/tags/release-notes.md>), [security](<https://devfeed.tech/tags/security.md>), [ssh](<https://devfeed.tech/tags/ssh.md>), [wi-fi](<https://devfeed.tech/tags/wi-fi.md>)

### AI overview

HypriotOS 1.10.0 is released with Docker Engine 18.06.3-ce, including Swarm Mode and a fix for CVE-2019-5736 in runC. The release supports Raspberry Pi models from Pi 1 through 3 B+, Zero, and Compute Module, and adds flashing, first-boot, Wi-Fi, service-discovery, and security configuration features.

### Source excerpt

We're proud to announce our 1.10.0 release of HypriotOS - the fastest way to get Docker up and running on any Raspberry Pi. Features of HypriotOS Latest Docker Engine 18.06.3-ce You can use the latest features of the freshly-baked Docker Engine 18.06.3-ce that is still warm. It includes the Swarm Mode, which allows high availability of services in a multi-node cluster within just a few simple commands. This version contains a fix for the CVE-2019-5736 in runC. Up to date with Raspbian Lite You can run HypriotOS with an up-to-date OS and Linux kernel which is in sync with the current Raspbian Lite running a Linux kernel 4.14.98. Support for the complete Raspberry Pi family You can run HypriotOS on every model of the Raspberry Pi family - we're supporting Pi 1, 2, 3, the 3 B+, Zero and even the Compute Module. Easy flashing and configuration We improved our flash tool, which puts HypriotOS onto a SD card that is ready to boot from with a single command. With additional command line options you can customize HypriotOS during the flash operation to have the best out-of-the-box first-boot experience. HypriotOS includes cloud-init, which makes the first boot of your Raspberry Pi customizable and you even are able connecting it to your Wi-Fi network during boot. After booting, you can find the Raspberry Pi at your network with a simple ping black-pearl.local - no more searching for IP addresses required thanks to the integrated Avahi service discovery. Enhanced security out of the box We think that security should be shipped out-of-the-box. We make HypriotOS more secure without you even noticing it. For instance, there is no built-in "root" user. Also, the default user "pirate" (password "hypriot") is can be customized or removed before the first boot. Just look at the file /boot/user-data. You can add your public SSH key, disable password logins and specify a different user account before you even boot your Raspberry Pi. WiFi can be customized and enabled to have Docker u

## Hypriot introduces donation support through Liberapay

DevFeed: [Hypriot introduces donation support through Liberapay](<https://devfeed.tech/articles/we-now-accept-donations-buy-us-a-beer-29467.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/donation-liberapay-support-contribute/>)

Published: 2018-05-29T14:30:00Z

Content type: opinion

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Open Source](<https://devfeed.tech/topics/open-source.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [Development](<https://devfeed.tech/topics/development.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [Deployment](<https://devfeed.tech/topics/deployment.md>)

Tags: [development](<https://devfeed.tech/tags/development.md>), [docker](<https://devfeed.tech/tags/docker.md>), [github](<https://devfeed.tech/tags/github.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [open-source-software](<https://devfeed.tech/tags/open-source-software.md>), [pipelines](<https://devfeed.tech/tags/pipelines.md>)

### AI overview

Hypriot announces that it accepts donations through Liberapay to help cover infrastructure and other costs associated with developing, testing, and deploying its open source software for Docker on ARM devices.

### Source excerpt

Many of our users have asked for it for quite a long time. Now, we finally took the time to setup a donation option. Since we started Hypriot in 2015, we received great attention from a growing community around Docker on ARMed devices. We received numerous "kudos" and nice words. Even though we greatly appreciate this until today, words do not enable us to pay our infrastructure bills. Now you have the option to support us materialistically. What we do with your donation Open source software might seem to be "free" (as in free beer) at first sight - that's a fallacy. Its development, testing, and deployment require a huuuge amount of scarce time, ARMed hardware for testing, costs for service providers that help us throughout the software lifecycle, and costs for software licenses. Today, everything at Hypriot we do in our leisure time and pay for related bills with our private wallet. It would be great if we could at least cover our basic costs for infrastructure. Many parts of our infrastructure are free of charge for us because many service providers for e.g. build pipelines or Github support open source projects (our software is 100% open source). However, some providers do not offer free subscriptions for open source projects. We'll use your donation to cover the bills from them. If the infrastructure costs are completely funded, we'll use the surplus to enjoy a good beer during our hacking sessions :-) Why Liberapay? Liberapay is a relatively new and trendy donation platform for free software projects. The unique thing about this platform: it pays its bills for development by receiving donations on its own platform! As transaction fees for payments, this platform only invoices for the fees they are charged by their financial provider. In addition, Liberapay is fully open source and based within the European Union. Using software stemming from within the EU got more important with the advent of the new data protection regulation. Thus Liberapay offers several ad

## Releasing HypriotOS 1.8.0: Raspberry Pi 3 B+, Stretch and more

DevFeed: [Releasing HypriotOS 1.8.0: Raspberry Pi 3 B+, Stretch and more](<https://devfeed.tech/articles/releasing-hypriotos-1-8-0-raspberry-pi-3-b-stretch-and-more-29474.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/releasing-HypriotOS-1-8/>)

Published: 2018-03-27T14:30:00Z

Content type: release

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [boot](<https://devfeed.tech/topics/boot.md>)

Tags: [boot](<https://devfeed.tech/tags/boot.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [docker](<https://devfeed.tech/tags/docker.md>), [linux](<https://devfeed.tech/tags/linux.md>), [networking](<https://devfeed.tech/tags/networking.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>), [release](<https://devfeed.tech/tags/release.md>), [security](<https://devfeed.tech/tags/security.md>)

### AI overview

HypriotOS 1.8.0 updates support for Raspberry Pi devices, including the Raspberry Pi 3 B+, with Raspbian Stretch, Linux kernel 4.9.80, and Docker Engine 18.03.0-ce. The release also improves flashing, first-boot configuration, Wi-Fi setup, service discovery, and security options.

### Source excerpt

We're proud to announce our 1.8.0 release of HypriotOS - the fastest way to get Docker up and running on any Raspberry Pi including the new Pi 3 B+. At this years Pi day the Raspberry Pi foundation has announced a new model - the Raspberry Pi 3 B+ with improved networking and a faster CPU. A good reason for us to update our HypriotOS to support this new device. And while we were at it we also updated the OS to Raspbian Stretch and Linux Kernel version 4.9.80 - and of course the latest Docker 18.03.0-ce release. Features of HypriotOS Latest Docker Engine 18.03.0-ce with Swarm Mode You can use the latest features of the freshly-baked Engine Docker 18.03.0-ce that is still warm. It includes the Swarm Mode, which allows high availability of services in a multi-node cluster within just a few simple commands. See this short video how it works. Up to date with Raspbian Lite You can run HypriotOS with an up-to-date OS and Linux kernel which is in sync with Raspbian Lite. We have updated to Raspbian Stretch and also prepared a new Docker optimized kernel 4.9.80. Support for the complete Raspberry Pi family You can run HypriotOS on every model of the Raspberry Pi family - we're supporting Pi 1, 2, 3, the 3 B+, Zero and even the Compute Module. Easy flashing and configuration We improved our flash tool, which puts HypriotOS onto a SD card that is ready to boot from with a single command. With additional command line options you can customize HypriotOS during the flash operation to have the best out-of-the-box first-boot experience. HypriotOS includes cloud-init, which makes the first boot of your Raspberry Pi customizable and you even are able connecting it to your Wi-Fi network during boot. After booting, you can find the Raspberry Pi at your network with a simple ping black-pearl.local - no more searching for IP addresses required thanks to the integrated Avahi service discovery. Enhanced security out of the box We think that security should be shipped out-of-the-box. We mak

## Bootstrapping a Cloud with Cloud-Init and HypriotOS

DevFeed: [Bootstrapping a Cloud with Cloud-Init and HypriotOS](<https://devfeed.tech/articles/bootstrapping-a-cloud-with-cloud-init-and-hypriotos-29464.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/cloud-init-cloud-on-hypriot-x64/>)

Published: 2017-10-29T07:14:00Z

Content type: tutorial

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [Automation](<https://devfeed.tech/topics/automation.md>), [Ansible](<https://devfeed.tech/topics/ansible.md>), [Portainer](<https://devfeed.tech/topics/portainer.md>), [Arm](<https://devfeed.tech/topics/arm.md>)

Tags: [ansible](<https://devfeed.tech/tags/ansible.md>), [arm](<https://devfeed.tech/tags/arm.md>), [automation](<https://devfeed.tech/tags/automation.md>), [docker](<https://devfeed.tech/tags/docker.md>), [nginx](<https://devfeed.tech/tags/nginx.md>), [portainer](<https://devfeed.tech/tags/portainer.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>), [ssh](<https://devfeed.tech/tags/ssh.md>)

### AI overview

A tutorial describing how cloud-init and HypriotOS 64-bit images can automate Raspberry Pi setup, including configuring Docker and related services on ARM64 hardware.

### Source excerpt

Things may come to those who wait, but only the things left by those who hustle. Over the last year, a lot has happened in the Raspberry Pi and Docker communities, there are Docker Captains helping lead the charge, one of those, Dieter Reuter really has been pushing the cause for ARM64 support with both Raspberry Pi 3 and LinuxKit. He isn't a single man army, the rest of the Docker Pirates over at Hypriot have been doing some awesome things as well! Image courtesy of Horia Varlan Building on the backs of these outstanding community members, I was finally able to spin up a Raspberry Pi, exactly like I do in the "real world", just turn it on, let it self-configure, then software just runs. A lot of this is really about having cloud-init available in the HypriotOS 64bit images thanks to another Pirate Stefan Scherer. In the "cloud world", you spin up instances, give it some user-data, then when it boots, the machines self-configures based on the instance meta-data and the user-data provided. Before Before we talk about the "new" pirate way, let't talk about the "old" non-pirate way. Download Raspbian Lite (the easiest for nubbies like me) Flash said image to an SD Card Optionally re-mount SD Card and monkey some stuff around Put the card in your RPi Power up the RPi If you don't have avahi/bonjour, go find the IP in your router SSH into the server Update Packages Run raspi-config and modify some junk Reboot Install Docker Initialize Docker Swarm Configure Portainer service (if not, are you broken?) "try" and find some images you can run on arm Cheer at your glory based nginx hello world page! Figure out how to use automation tools like Ansible to make your life easier when you need a cluster Bang head on desk learning so much... Do victory dances when you created a bunch of automation around setting up servers Go find out what the community is doing It is at that point, when the community really is an awesome place. Given the latest HypriotOS-rpi64, the flash utility (al

## DockerCon 2017 Demo: Monitoring Docker Swarm with LED's

DevFeed: [DockerCon 2017 Demo: Monitoring Docker Swarm with LED's](<https://devfeed.tech/articles/dockercon-2017-demo-monitoring-docker-swarm-with-led-s-29466.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/dockerconaustin2017/>)

Published: 2017-04-20T20:30:34Z

Content type: tutorial

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Docker](<https://devfeed.tech/topics/docker.md>), [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>), [Docker Image](<https://devfeed.tech/topics/docker-image.md>), [Containers](<https://devfeed.tech/topics/containers.md>), [Linux](<https://devfeed.tech/topics/linux.md>)

Tags: [arm](<https://devfeed.tech/tags/arm.md>), [docker](<https://devfeed.tech/tags/docker.md>), [docker-hub](<https://devfeed.tech/tags/docker-hub.md>), [led](<https://devfeed.tech/tags/led.md>), [monitoring](<https://devfeed.tech/tags/monitoring.md>), [multi-arch](<https://devfeed.tech/tags/multi-arch.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>), [rolling-update](<https://devfeed.tech/tags/rolling-update.md>), [swarm](<https://devfeed.tech/tags/swarm.md>)

### AI overview

A DockerCon 2017 demonstration shows how to monitor Docker Swarm scaling and rolling updates with LEDs on a Raspberry Pi or UP board cluster. The article explains the required multi-architecture Docker images, swarm setup, LED monitor service, scaling commands, and rolling update visualization.

### Source excerpt

At DockerCon 2017 in Austin I gave a presentation of a Raspberry Pi cluster mixed with some UP boards. The audience really liked the visual effects of the Docker Swarm scaling a service up and down. So I show you some background details what you need to run that demo on your Raspberry Pi cluster as well. All the effort played off to build that cluster, to find out how to drive LED's in swarm mode, to put it into my bag and go through customs on my flight from Germany to Austin, Texas. It really was fun to show this the audience and everybody liked it. To enable you to replay the demo with some Pimoroni Blinkt! LED's and Raspberry Pi - regardless if you only have Pi Zeros I want to show you the Docker images I used and the commands to show the scaling demo. The Docker image stefanscherer/monitor is available on the Docker Hub. It is a multi-architecture image that can be used on Linux with Intel or ARM CPU's. So just create a Docker swarm with the usual commands docker swarm init and then join some other workers with the swarm token shown in your terminal. Start the LED monitor First we have to start the LED monitor as a service so that it is running on each node of the Docker swarm. The option --mode global will do this and start one instance on each node. We have to bind mount both the Docker socket and a part of the file system into the container so it can access the /sys/class/fs file system. docker service create --name monitor --mode global \ --restart-condition any --mount type=bind,src=/sys,dst=/sys \ --mount type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock \ stefanscherer/monitor:1.1.0 Now we are all set to play with scaling an example service. Scale up There is another multi-arch image that I used for the scaling demo. It is the "whoami" web service that responds the container's hostname. First we create the service with docker service create --name whoami stefanscherer/whoami:1.1.0 As said this works with any Raspberry Pi or the UP board that ha

## Building a 64bit Docker OS for the Raspberry Pi 3

DevFeed: [Building a 64bit Docker OS for the Raspberry Pi 3](<https://devfeed.tech/articles/building-a-64bit-docker-os-for-the-raspberry-pi-3-29463.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/building-a-64bit-docker-os-for-rpi3/>)

Published: 2017-03-02T10:28:42Z

Content type: tutorial

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Docker](<https://devfeed.tech/topics/docker.md>), [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>), [Containers](<https://devfeed.tech/topics/containers.md>), [Operating system](<https://devfeed.tech/topics/operating-system.md>), [Debian](<https://devfeed.tech/topics/debian.md>), [Kernel](<https://devfeed.tech/topics/kernel.md>), [boot](<https://devfeed.tech/topics/boot.md>), [ci](<https://devfeed.tech/topics/ci.md>), [Travis CI](<https://devfeed.tech/topics/travis-ci.md>), [GitHub](<https://devfeed.tech/topics/github.md>), [pull-requests](<https://devfeed.tech/topics/pull-requests.md>)

Tags: [boot](<https://devfeed.tech/tags/boot.md>), [bootloader](<https://devfeed.tech/tags/bootloader.md>), [bugs](<https://devfeed.tech/tags/bugs.md>), [ci](<https://devfeed.tech/tags/ci.md>), [containers](<https://devfeed.tech/tags/containers.md>), [debian](<https://devfeed.tech/tags/debian.md>), [docker](<https://devfeed.tech/tags/docker.md>), [github](<https://devfeed.tech/tags/github.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [kernel](<https://devfeed.tech/tags/kernel.md>), [linux](<https://devfeed.tech/tags/linux.md>), [opensource](<https://devfeed.tech/tags/opensource.md>), [os](<https://devfeed.tech/tags/os.md>), [pull-requests](<https://devfeed.tech/tags/pull-requests.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>), [travis-ci](<https://devfeed.tech/tags/travis-ci.md>), [workshop](<https://devfeed.tech/tags/workshop.md>)

### AI overview

A workshop introduces the step-by-step construction of HypriotOS, a 64-bit Debian-based operating system for Raspberry Pi 3 focused on running Docker containers. It covers the bootloader, kernel, root filesystem, and SD card image, using Docker for builds and Travis CI for cloud builds.

### Source excerpt

I'm happy to announce the start of a "short" workshop were I'm going through all the steps to build a complete 64bit operating system for the Raspberry Pi 3. This 64bit HypriotOS is mainly focused on running Docker containers easily on this popular DIY and IoT device. You'll see that I'm using Docker heavily for each and every build step, because it really helps us a lot to run a local build with Docker-for-Mac or later on the cloud build servers at Travis CI. This workshop is sponsored by bee42 solutions Follow @bee42solutions Background and Contents As you may already know, a complete Linux operating system consists of several important building blocks and I'd like to show you how to build all of these step by step. For this purpose I'm not going to reinvent the wheel and so I'll reuse all of the existing parts which are already published by the Raspberry Pi Organisation, by the Debian Linux project and will add some more glue code. At the end you should have learned how to build all the necessary parts and how to automatically create a finished SD card image which could be flashed on an empty SD card. Then boot your Raspberry Pi 3 with and in less than a minute you have a fully running Docker Engine on a Debian-based 64bit Linux OS. Here is a short overview of the contents of the workshop: Part 1: Bootloader Part 2: Kernel Part 3: Root filesystem Part 4: SD Card Image So, that's enough for explaining the background of this workshop. For more informations please follow along the details I'll publish on the coming tweets at Twitter and in the GitHub repos until all the parts of this workshop are finished and available as OpenSource. Please be aware that this OS is in a development phase and far from being perfect. So you are encouraged to help me with reporting issues and filing pull-requests to add features and fix bugs. Further Links I'm going to publish all the details and steps to build the new operating system in a public GitHub repo. All other details and nec

## Let's build the smallest possible Docker image

DevFeed: [Let's build the smallest possible Docker image](<https://devfeed.tech/articles/let-s-build-the-smallest-possible-docker-image-29462.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/build-smallest-possible-docker-image/>)

Published: 2017-02-22T08:18:35Z

Content type: tutorial

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Docker](<https://devfeed.tech/topics/docker.md>), [Docker Image](<https://devfeed.tech/topics/docker-image.md>), [Internet of things](<https://devfeed.tech/topics/iot.md>), [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>), [Assembly](<https://devfeed.tech/topics/assembly.md>), [Arm](<https://devfeed.tech/topics/arm.md>), [Code](<https://devfeed.tech/topics/code.md>), [Deployment](<https://devfeed.tech/topics/deployment.md>)

Tags: [arm](<https://devfeed.tech/tags/arm.md>), [assembly](<https://devfeed.tech/tags/assembly.md>), [code](<https://devfeed.tech/tags/code.md>), [devops](<https://devfeed.tech/tags/devops.md>), [docker](<https://devfeed.tech/tags/docker.md>), [docker-image](<https://devfeed.tech/tags/docker-image.md>), [iot](<https://devfeed.tech/tags/iot.md>), [linux](<https://devfeed.tech/tags/linux.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>)

### AI overview

This tutorial explores building very small Docker images for IoT devices with limited memory, storage, CPU capacity, and network connectivity. It describes using a statically linked ARM assembly binary that runs as a single Linux process in a Docker container, with build instructions available in a public GitHub repository.

### Source excerpt

Imagine what happens if we're starting to use Docker containers on IoT devices. On small and slow devices with limited system resources and connected via a damn slow network connection we do have to care differently on how to build and ship our apps. In these circumstances it pays off and it's absolutely essential to optimize our applications and the resulting Docker images for size. SIZE DOES MATTER If we're doing it right we'll get a lot of benefits such as blasting fast download speed for updating to a new or more secured version. On wireless networks we are also reducing the costs for data transfers as well. According to my tweet I'd like to start a new Docker challenge: How small is the smallest Docker image we could build, which prints a "Hello Docker World!"? Background Sometimes developing directly on an IoT device can be pretty hard or nearly impossible due to the lack of enough system resources. These resources can be the amount of memory, disk space or CPU capacity - or it can be just a limited network connectivity over a low-bandwith 64kbit/sec wireless network. So, let's assume we do have a Raspberry Pi already deployed in the field and this IoT device has such a low-bandwidth network connection. We're preparing our developing system to run on a bare-metal cloud server and we are transfering our build artefacts as ready-to-run Docker images regularly with each and every new release in a DevOps driven manner. For this reason we'd like to speed up the deployment with minimized Docker image sizes. Wait, I thought a Docker image can be pretty heavy with up to 1 GByte or even larger? Well, that could happen if we're packing a whole Operating System like Ubuntu or Debian into our Docker images. But as we're building an IoT application we should take care about that situation. A Docker image can instead be build with an app consisting of a statically linked binary and when we start it as a Docker container it will run a single Linux process only. Creating our

## How to Set Up Kubernetes on a Raspberry Pi Cluster with kubeadm

DevFeed: [How to Set Up Kubernetes on a Raspberry Pi Cluster with kubeadm](<https://devfeed.tech/articles/setup-kubernetes-on-a-raspberry-pi-cluster-easily-the-official-way-29475.md>)

Original publisher: [Read original article](<https://blog.hypriot.com/post/setup-kubernetes-raspberry-pi-cluster/>)

Published: 2017-01-11T13:03:34Z

Content type: tutorial

Language: en

Sources: [Hypriot](<https://devfeed.tech/sources/hypriot.md>)

Topics: [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>), [Orchestration](<https://devfeed.tech/topics/orchestration.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [Arm](<https://devfeed.tech/topics/arm.md>), [Internet of things](<https://devfeed.tech/topics/iot.md>)

Tags: [arm](<https://devfeed.tech/tags/arm.md>), [cncf](<https://devfeed.tech/tags/cncf.md>), [docker](<https://devfeed.tech/tags/docker.md>), [iot](<https://devfeed.tech/tags/iot.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [orchestration](<https://devfeed.tech/tags/orchestration.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>)

### AI overview

This tutorial explains how to set up Kubernetes on a Raspberry Pi cluster using the official kubeadm approach introduced with Kubernetes v1.4. It presents Kubernetes as a lightweight, ARM-compatible, general-purpose orchestrator for resource-constrained IoT edge environments and compares it with Docker Swarm and other cluster-management software.

### Source excerpt

Kubernetes shares the pole position with Docker in the category "orchestration solutions for Raspberry Pi cluster". However it's setup process has been elaborate - until v1.4 with the kubeadm announcement. With that effort, Kubernetes changed this game completely and can be up and running officially within no time. I am very happy to announce that this blog post has been written in collaboration with Lucas Käldström, an independent maintainer of Kubernetes (his story is very interesting, you can read it in a CNCF blogpost). Why Kubernetes? As shown in my recent talk, there are many software suites available to manage a cluster of computers. There is Kubernetes, Docker Swarm, Mesos, OpenStack, Hadoop YARN, Nomad... just to name a few. However, at Hypriot we have always been in love with tiny devices. So when working with an orchestrator, the maximum power we wanna use is what's provided by a Raspberry Pi. Why? We have IoT networks in mind that will hold a large share in tomorrow's IT infrastructure. At their edges, the power required for large orchestrators simply is not available. This boundary of resources leads to several requirements that need to be checked before we start getting our hands dirty with an orchestrator: Lightweight: Software should be fit on a Raspberry Pi or smaller. As proofed in my talk mentioned above, Kubernetes painlessly runs on a Raspberry Pi. ARM compatible: Since the ARM CPU architecture is designed for low energy consumption but still able to deliver a decent portion of power, the Raspberry Pi runs an ARM CPU. Thanks to Lucas, Kubernetes is ARM compatible. General purpose: Hadoop or Apache Spark are great for data analysis. But what if your use case changes? We prefer general purpose software that allows to run anything. Kubernetes uses a container runtime (with Docker as the 100% supported runtime for the time being) that allows to run whatever you want. Production ready: Since we compare Kubernetes against a production ready Docker suite