Skip to main content

Posts

Raspberry Pi WiFi Access Point with Code-Server Development Environment

  Introduction In this follow-up guide, we'll transform your Raspberry Pi 4 into a powerful mobile development station that doubles as a WiFi access point. Building on our  previous USB-C setup , we'll add a second WiFi interface, configure the built-in WiFi as an access point, and set up a complete development environment accessible from your iPad. What We'll Achieve By the end of this guide, you'll have: Dual WiFi Setup : USB WiFi adapter for internet connectivity + built-in WiFi as an access point Internet Sharing : Other devices can connect to your Pi's WiFi and access the internet Docker Environment : Container platform for running services Code-Server IDE : VS Code in your browser, accessible from your iPad GitHub Integration : SSH keys configured for seamless Git operations Perfect for : Mobile development, on-the-go coding, providing WiFi hotspot, creating a portable dev environment Prerequisites Raspberry Pi 4 with USB-C setup completed ( see previous guide...
Recent posts

Setting Up Raspberry Pi 4 with USB-C Connection to iPad/Laptop

  Introduction In this guide, we'll configure a Raspberry Pi 4 to be powered and accessed directly through a single USB-C cable connected to an iPad or laptop. This setup creates a portable, headless Raspberry Pi that requires no separate power adapter, HDMI display, keyboard, or Ethernet cable. Perfect for mobile development, testing, or working with your Pi on the go. Objective Our goal is to create a fully functional Raspberry Pi 4 setup that can be accessed via a single USB-C connection. We'll accomplish this by: Using Raspberry Pi Imager to customize Pi OS Lite (64-bit) with SSH and WiFi credentials Burning the configured image to an SD card SSH into the Pi via WiFi for initial configuration Updating boot configuration files to enable USB gadget mode Creating a new network connection using  nmcli  and activating it on boot Connecting the Pi to an iPad or laptop using only a USB-C cable Hardware Requirements To complete this setup, you'll need: iPad or laptop  wi...

Authenticating Traefik Apps with Authentik

 Introduction In our previous post , we secured the Homer app with trusted Let's Encrypt certificates using Traefik as a reverse proxy. But what if only authorized users should access Homer? In this blog, we'll address this by adding multi-factor authentication to Homer using Authentik as an Identity Provider (IdP). Objective The core objectives of this tutorial are to: Set Up Secure Access with Authentik:  Install Authentik using Docker Compose and create your first user to manage access control. Secure Homer with Authentik:  Configure Authentik to act as a gatekeeper, ensuring only authorized users can access your Homer application. Simplify Logins with Traefik:  Integrate Traefik with Authentik to enable Single Sign-On (SSO) for a seamless login experience across your applications. Connect Homer to Authentik:  Configure Homer to leverage Authentik's authentication system for secure logins. Topology For the topology details please see the previous post ....

Securing Traefik with Let's Encrypt

Introduction Building on the previous Traefik setup with an internal domain and applications, this tutorial guides you through using a public domain with trusted certificates. Objective The core objectives of this tutorial are to: Deploy Traefik with Automatic SSL using Docker:  This step covers installing the latest Traefik with Let's Encrypt integration and exposing the container to the internet. Configure DNS for Secure Access:  Set up an A record in your domain provider (e.g., Cloudflare) pointing to your pfSense firewall's public IP address for external access and pfsense's DNS server for internal access. Access Applications with HTTPS:  Access your applications using their fully qualified domain names with trusted certificates externally and internally Topology Lets walk through our topology: pfsense This is our firewall which is directly connected to the Internet and doing the following: NATs all traffic from the internal LAN network (192.168.11.0/24) to the WAN (...

Traefik Install and configuration - Part 1

Introduction In this tutorial we are going to install and configure Traefik Proxy . As quoted on their website "Traefik is a leading modern reverse proxy and load balancer that makes deploying microservices easy. Traefik integrates with your existing infrastructure components and configures itself automatically and dynamically." All our applications will be front-ended by traefik. Objective The core objective for this tutorial is to: Configure an A record in our DNS server (pfsesne firewall) to point to our traefik proxy Configure and install Traefik in docker Configure and install two http based applications ( homer and heimdall ) in docker that will be accessed via traefik Topology The above image represents our topology. Our pfsense firewall is connected directly to the Internet and is NAT'ing all traffic from the internal network to the outside world. We have a single LAN segment (192.168.11.0/24) defined on pfsense and we have the following two PC's connected d...

Run your Meteor App on a Production Ubuntu 16.04 Server with Nginx

Introduction Meteor enables developers to create apps and quickly test them on a development webserver. Once you have created your app the big question is how to run it on a production server. In this tutorial we will demostrate how to run your Meteor app on Ubuntu 16.04 using Nginx Credits and Acknowledgements This entire post is based off this Digital Ocean article. The article was modified for issues we encountered and adapted for Ubuntu 16.04. The entire credit goes to Daniel Speichert Objective In this tutorial we will: Install and Configure Nginx with HTTPS enabled Install MongoDB Install NodeJS Bundle your Meteor App Create a startup script to automatically start your app on reboot Assumptions We assumue the following: You already have a fresh install of Ubuntu 16.04 Server SSH enabled on your fresh install You have root privelages on your server You have a different server where you can insall meteor and budle your app...