TRENDING
Rows of identical brass-colored apartment mailboxes with small locks and name labels along an orange corridor wall
October 9, 2026
How to Prevent Broken Object Level Authorization (IDOR) in a FastAPI App
Street-level upward view of the Monetary Authority of Singapore building and neighbouring office towers under a pale sky
October 9, 2026
Singapore’s AI Guidelines Turn Independent Review Into a Question of Who Sets the Risk Rating
Cast-iron late Qing dynasty coin minting press with a large flywheel, displayed in a museum case
October 9, 2026
Attackers Hijacked the .gh, .sl and .as Country Domains and Minted HTTPS Certificates for Google
Rows of closed oak library card catalog drawers, each with a brass pull and a blank label holder
October 9, 2026
How to Encrypt PII in Python and Keep It Searchable With Blind Indexes
Close-up of a vintage Western Electric manual telephone switchboard with orange lamps, red patch cords plugged into jacks, a rotary dial and a black handset
October 9, 2026
Microsoft’s Agent Lightning v1.0 Turns Agent Training Into a Sample-Accounting Problem
09 Oct 2026
SXZ.io SXZ.io
  • Home
Search the Site
Popular Searches:
Technology Amazon AI
Recent Posts
Two orange safety relief valves on grey pressure vessels in an industrial plant
How to Add Backpressure and Load Shedding to a Python Service Before Overload Takes It Down
October 8, 2026
Yellow diamond-shaped merging traffic warning sign showing a side road joining a main road
GitHub’s Git Rebuild Turns Repository Durability and Read Scale Into Two Separate Problems
October 8, 2026
A lugworm lying on wet sand and mud at low tide
A Compromised Admin Account Put the Shai-Hulud Worm Into AI Sandbox Maker Tensorlake’s npm SDK
October 8, 2026
SXZ.io SXZ.io
  • Home

Categories

Articles 232 Posts
News 234 Posts
Learning Hub 204 Posts
Home/Learning Hub/Ubuntu Core 26 in a VM: A Local AI Appliance Checklist
Learning Hub

Ubuntu Core 26 in a VM: A Local AI Appliance Checklist

Use Ubuntu Core 26, Multipass, and gemma4 to rehearse a local AI inference appliance before moving to edge hardware.

June 16, 2026 5 Min Read
49

Ubuntu Core 26 gives developers a practical way to test an appliance-style AI stack before they choose edge hardware. Canonical’s June 16 walkthrough shows Ubuntu Core 26 running in a Multipass virtual machine, then adds the gemma4 snap so the VM exposes a local inference server and WebUI. The useful lesson is not that every production device should be a VM. It is that the VM is a safe rehearsal space for the same operating model you will later need on a real appliance: a small immutable base, application snaps, managed services, explicit network exposure, and a repeatable acceptance test.

Table Of Content

  • Why Start With the VM Before Buying Edge Hardware?
  • The Lab Architecture
  • Ubuntu Core 26 as the appliance base
  • Multipass as the local test harness
  • gemma4 as the inference workload
  • Expose the Service Deliberately
  • A Practical Acceptance Test
  • Production Checklist Before Moving Beyond the VM
  • 1. Resource budget
  • 2. Snap configuration and service ownership
  • 3. Network exposure
  • 4. Update and rollback behavior
  • Minimum release gate
  • What Not to Infer From the Demo
  • Source Notes

This checklist is written for Ubuntu Core 26, Canonical Multipass, and the gemma4 snap as described in Canonical’s source post. Treat the commands as a lab baseline, not a substitute for your hardware bill of materials, model license review, or production threat model.

Why Start With the VM Before Buying Edge Hardware?

Ubuntu Core is designed for embedded, IoT, robotics, industrial, and cloud-connected systems. Canonical’s documentation describes it as immutable and transaction-based, with image-based deployment, automatic updates, sandboxed applications, and rollback capabilities. That matters for local AI because an inference appliance is not just “Linux plus a model.” It is a product that must keep booting, updating, recovering, and exposing only the services you intend to expose.

A Multipass VM lets the team answer basic questions quickly: how much memory does the selected model need, which services start automatically, where does the API listen, what needs to be opened to the host, and what operational checks will be used before the image moves to hardware. If the lab cannot produce a clean runbook, the hardware version will not magically become easier.

The Lab Architecture

Ubuntu Core 26 as the appliance base

In this pattern, Ubuntu Core 26 is the device-oriented base operating system. The application workload is delivered as snaps rather than hand-edited packages spread across the filesystem. That separation is the point: the base system, snapd, and application services can be reasoned about independently when you later build a production image.

Multipass as the local test harness

Multipass provides the disposable local VM. Its launch command supports CPU, memory, disk, and name options, so the lab can start with explicit resource assumptions instead of hidden defaults. Canonical’s walkthrough uses a four-vCPU, 10 GB memory, 16 GB disk VM named aibox:

# Target: Ubuntu Core 26 running under Canonical Multipass on a developer workstation.
multipass launch core26 -n aibox --cpus 4 --memory 10GB --disk 16GB
multipass shell aibox

gemma4 as the inference workload

Inside the Ubuntu Core 26 VM, the AI workload is installed as a snap:

# Target: Ubuntu Core 26 VM named aibox, inside the VM shell.
sudo snap install gemma4
gemma4 status

The status output in Canonical’s example reports a CPU engine, active server services, an OpenAI-compatible endpoint, and a WebUI endpoint. Your acceptance test should use the exact endpoint reported by gemma4 status, because that is the contract your scripts and clients will depend on.

Expose the Service Deliberately

The common lab mistake is to see “localhost” in service output and assume the host browser can reach it. In this setup, localhost means the Ubuntu Core VM. Canonical’s runbook changes the snap options so the inference server and WebUI listen on the VM network interface:

# Target: gemma4 snap running inside the Ubuntu Core 26 VM.
sudo gemma4 set http.host=0.0.0.0 webui.http.host=0.0.0.0 --assume-yes

Then return to the host and read the VM address:

# Target: host workstation running Multipass.
multipass info aibox

Use the IPv4 address from multipass info for testing. If the VM reports 10.100.120.150, the WebUI in Canonical’s example is available at port 8337, while the API service is on port 8336. Keep the IP address as a variable in your notes so the runbook does not bake in one developer’s temporary address.

A Practical Acceptance Test

Before calling the lab “working,” verify the service from the same place your users or downstream applications will connect. A minimal test plan should cover service state, host reachability, and a single inference request.

# Target: host workstation. Replace the value with the IPv4 from `multipass info aibox`.
AIBOX_IP="10.100.120.150"

# Confirm that the WebUI port responds from the host network path.
curl -I "http://${AIBOX_IP}:8337"

# Confirm the API route using the route shown in Canonical’s raw cURL example.
curl "http://${AIBOX_IP}:8336/chat/completions" 
  -H "Content-Type: application/json" 
  -d '{
    "messages": [
      {"role": "user", "content": "Reply with one sentence about Ubuntu Core."}
    ],
    "max_completion_tokens": 80
  }'

If the raw request fails, do not guess. Go back to gemma4 status, confirm whether your client should use http://<ip>:8336/v1 as an OpenAI-compatible base URL or a different path, and record the exact command that worked on your version of the snap.

Production Checklist Before Moving Beyond the VM

1. Resource budget

The VM baseline is intentionally generous for a small local lab: four CPUs and 10 GB of memory. Record actual memory pressure, startup time, and response latency under the prompt sizes your application expects. If you plan to move to an edge board, repeat those measurements on the real CPU, GPU, NPU, storage, and thermal profile.

2. Snap configuration and service ownership

Snapcraft’s documentation groups day-to-day snap operations around installation, configuration, updates, services, and confinement. For an appliance, that means every production setting should be captured as a snap option, model assertion, image-build input, or deployment policy. Avoid “SSH in and edit a file” procedures unless they are explicitly part of a break-glass support path.

3. Network exposure

Binding to 0.0.0.0 is acceptable in a controlled VM lab so the host can test the service. It is not a complete production network policy. Before shipping, define which interface should listen, how the service is authenticated, whether the WebUI should exist in production, and which firewall or gateway rule protects the inference API.

4. Update and rollback behavior

Ubuntu Core’s value proposition includes automatic updates and rollback. Test that behavior before you depend on it. A production image should have a documented channel strategy, a way to hold or validate updates when needed, and a recovery procedure that operators can execute without becoming Linux forensic experts.

Minimum release gate

  • The VM can be recreated from a short runbook without manual mystery steps.
  • gemma4 status shows the expected engine, services, and endpoints.
  • The host can reach the WebUI and API only through approved network paths.
  • A scripted prompt returns a response and logs the endpoint path that was used.
  • Resource measurements are captured before choosing real edge hardware.
  • Image-build, update, rollback, and support procedures are documented.

What Not to Infer From the Demo

This lab does not prove that one model is safe for your use case, that CPU inference is fast enough for every workload, or that exposing a local API is secure by default. It proves something narrower and still valuable: Ubuntu Core 26, Multipass, and a snap-delivered inference workload can be assembled into a repeatable local appliance pattern. The production decision comes after measurement, threat modeling, model governance, and hardware validation.

Source Notes

This checklist is based on Canonical’s Ubuntu Blog post, “A look into Ubuntu Core 26: Building a local AI inference appliance in a virtual machine”. Supporting references include the Ubuntu Core documentation, Canonical’s Multipass launch reference, the Snap documentation, and the featured image’s Wikimedia Commons license page.

Tags:

Edge AILocal AIMultipassSnapcraftUbuntu Core

Share

Night skyline of Seoul from Namsan Mountain, illustrating South Korea’s fast-moving AI adoption environment
Previous Post

South Korea’s AI Enthusiasm Is a Release-Readiness Test

Padlock over a circuit board representing WordPress supply-chain security risk
Next Post

Wordfence Says ShapedPlugin Pro Updates Carried Backdoors

No Comment! Be the first one.

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Latest
08 Oct
How to Add Backpressure and Load Shedding to a Python Service Before Overload Takes It Down
08 Oct
GitHub’s Git Rebuild Turns Repository Durability and Read Scale Into Two Separate Problems
Trending
October 8, 2026
How to Add Backpressure and Load Shedding to a Python Service Before Overload Takes It Down
October 8, 2026
GitHub’s Git Rebuild Turns Repository Durability and Read Scale Into Two Separate Problems
October 8, 2026
A Compromised Admin Account Put the Shai-Hulud Worm Into AI Sandbox Maker Tensorlake’s npm SDK
October 8, 2026
How to Prevent Broken Object Level Authorization (IDOR) in a FastAPI App
October 8, 2026
Singapore’s AI Guidelines Turn Independent Review Into a Question of Who Sets the Risk Rating
October 8, 2026
Attackers Hijacked the .gh, .sl and .as Country Domains and Minted HTTPS Certificates for Google

Related Posts

A laptop wrapped in a chain and padlock, illustrating least-privilege controls for AI agents.
Learning Hub

How to Secure Tool-Using AI Agents Before They Touch Production

June 8, 2026
Colorful sticky notes arranged on an office wall, symbolizing governance checklists and planning.
Learning Hub

AI Governance for Agentic Apps: A Practical Checklist for Builders

June 8, 2026
A technician connects green fiber optic cables at a data center, representing a private production inference endpoint.
Learning Hub

How to Deploy a Fine-Tuned LLM Behind a Private Production Inference Endpoint

June 8, 2026
Narrow aisle behind black supercomputer racks in a data center
Learning Hub

Kubernetes SELinux Volume Labeling: What Cluster Operators Should Audit Before v1.37

June 8, 2026
SXZ.io SXZ.io
  • [email protected]

Categories

Articles
Learning Hub
News

All Rights Reserved by SXZ.io ©2026