Provisioning a Raspberry Pi with Ansible (and an iPad)

Published on

The repository accompaining this blog post can be found on GitHub

It contains the whole code to get your Raspberry Pi up and running with Docker and Docker Compose, set it up for network access through USB-C and configure a few other things.

There is an excellent post about configuring your Pi to connect to your iPad via USB-C.

I automated the process with Ansible and added a few other things.

Personal setup

I have an iPad Pro M1 and a Raspberry Pi 4B 8GB.

Sometimes I connect them via USB-C.

But most of the times the Pi is connected via WiFi to my home network.

When doing 3D printing stuff, I connect through VNC to the Pi.

On the iPad I use Blink shell (no affiliation) to connect to the Pi over SSH via WiFi.

On the Pi, I provision the Pi itself, by running ansible-playbook playbook.yml

Again on the Pi, that’s where I provision my server(s) with Ansible too.

Conclusions (iPad + Pi)

The experience with Blink Shell is surprisingly sleak and quite usable to be honest.

I can even run VSCode inside Blink Shell and edit files on the Pi, use GitHub Codespaces and generally do most of the things I do on my laptop.

Managing Docker containers on the Pi can be done with ease from the iPad.

Various services run on Docker in my home network and can be accessed from e.g. my iPad or phone.

To be clear: currently nothing beats a computer with a keyboard and a mouse, but this is my setup for now and I make it work for me.