Available for Q3 2026 projects — Laravel, AI agents & automation
Build With Abdallah logo Build With Abdallah Software · AI · Automation
Tutorial 3 min read Jun 03, 2026

Turn Your Raspberry Pi Into a Self-Hosted AI Publishing Station

Run social-media-kit with Ollama Cloud on a Raspberry Pi to generate blog articles and social posts from one command — review on your phone, then publish.

A
Abdallah Mohamed
Senior Full-Stack Engineer
Turn Your Raspberry Pi Into a Self-Hosted AI Publishing Station

Turn Your Raspberry Pi Into a Self-Hosted AI Publishing Station

Running an AI-powered content pipeline usually means either paying for SaaS tools or wrestling with cloud APIs. But what if you could run the whole thing — blog generation, social post drafting, and multi-platform publishing — from a $35 Raspberry Pi on your desk?

With social-media-kit (smkit v2.4.1) and Ollama Cloud, that setup is not only possible but surprisingly straightforward. Here is a hands-on walkthrough.

Why Ollama Cloud on a Pi?

Local LLMs on a Raspberry Pi are constrained by RAM. Even a 7B parameter model struggles on 8 GB. Ollama Cloud lets you offload the heavy inference to remote servers while keeping the orchestration, dashboard, and publishing logic local.

The Pi becomes a lightweight publishing station — not a GPU cluster.

Step-by-step: From zero to a live publish

1. Install in a virtual environment

python -m venv smkit-env
source smkit-env/bin/activate
pip install smkit==2.4.1

2. Configure your LLM provider

Point smkit at Ollama Cloud and pick a capable cloud model:

provider: ollama
model: glm-5.1:cloud

No local model weights, no GPU fan noise.

3. Create a channel-limited profile

Define a profile that only enables the channels you intend to test — blog, Facebook, LinkedIn, for example. This prevents accidental cross-publishing if a config file has stale credentials.

4. Run a dry-run first

smkit run \
  --topic "Your topic" \
  --profile live-blog-fb-linkedin \
  --provider ollama \
  --model glm-5.1:cloud \
  --dry-run \
  --verbose

The --dry-run flag skips the actual publish call. It still runs the model and generates the draft and social posts, so you can inspect everything before anything goes live.

5. Inspect the dashboard on your phone

Start the web dashboard:

smkit dashboard --host 0.0.0.0 --port 8081

If you have UFW enabled:

sudo ufw allow from 192.168.40.0/24 to any port 8081 proto tcp

Open http://192.168.40.209:8081 from any device on the same LAN — phone, tablet, laptop. Enter a topic, toggle dry-run, and review the generated article and platform-native posts before committing.

6. Publish live

When everything checks out:

smkit run \
  --topic "Your topic" \
  --profile live-blog-fb-linkedin \
  --provider ollama \
  --model glm-5.1:cloud \
  --yes \
  --verbose

Real-world note: LinkedIn tokens expire

During testing the blog and Facebook pipelines passed cleanly. LinkedIn reached the API but returned INVALID_ACCESS_TOKEN — which means the integration path works, but the stored token had expired.

LinkedIn access tokens are short-lived. Before a live demo or sale call, run the refresh script:

scripts/linkedin_oauth.py

This is not a bug — it's standard OAuth hygiene. Factor it into your demo checklist.

Why this matters

You now have a self-contained, AI-powered publishing station that:

  • Runs on a Raspberry Pi (no cloud VM costs)
  • Generates blog articles and native social posts from one command
  • Lets you review everything via a phone-friendly dashboard before publishing
  • Costs nothing beyond the Pi and your Ollama Cloud credits

For founders and indie builders who want to own their pipeline end-to-end, this is a strong alternative to Hootsuite, Buffer, or Jasper — all running on hardware you already own.


Want more hands-on engineering content like this? Follow BuildWithAbdallah for practical AI and infrastructure tutorials.