
Ollama has become one of the most popular tools for running Large Language Models locally on Linux. One command, one model, and Qwen, Gemma, Llama, or other open models are running on your own machine.
But what about images? Can you actually generate images with Ollama on Linux?
As of August 2026, the answer is a bit unusual: yes — Ollama now has its own experimental image generation feature. But also no — that native feature isn't officially available on Linux yet.
Ollama announced its own image generation on January 20, 2026, initially for macOS. Supported models include Z-Image Turbo and FLUX.2 Klein. Windows and Linux support are still listed as upcoming features on Ollama's official site.
That doesn't mean Linux users have to go without local image generation, though. Quite the opposite: with Ollama, Open WebUI, and ComfyUI you can already build a capable, fully local AI environment today, where a language model understands and refines the prompt and an image model then generates the actual picture. That's exactly the environment we'll build in this tutorial.
The goal: a local ChatGPT for text and images
Our architecture consists of three components:
| Component | Role |
|---|---|
| Ollama | Runs the local language model |
| Open WebUI | Provides the chat interface |
| ComfyUI | Generates the images |
| FLUX / Stable Diffusion | The actual image model |
The key advantage of this architecture is that each piece of software does exactly what it's best at. Ollama handles language and can turn a simple description into a detailed image prompt. ComfyUI then takes care of diffusion, sampling, resolution, seeds, models, and the actual image file. Open WebUI connects both worlds into a single interface.
Day to day, the result feels almost like a multimodal cloud AI service — except it runs on your own Linux system.
Can Ollama generate images by itself?
Since January 2026, the basic answer is yes. Ollama has introduced an experimental image generation feature. Among other things, the Z-Image Turbo and FLUX.2 Klein models are available in the experimental x/ namespace.
On a supported system, an image model can be invoked directly through Ollama, for example:
ollama run x/z-image-turbo
or:
ollama run x/flux2-klein
Generated files are saved in the current directory. Ollama also supports settings for resolution, seed, step count, and negative prompts.
The catch for Linux
According to Ollama's own documentation, this feature is not yet officially available for Linux. And that matters: plenty of tutorials online already give the impression that typing ollama run x/flux2-klein on Ubuntu or Debian just works. As of August 31, 2026, that does not match Ollama's officially documented Linux support.
That's why this tutorial doesn't rely on an experimental workaround, but instead on a combination that actually works on Linux today.
Why ComfyUI?
ComfyUI is far more than just a Stable Diffusion front end. It works with so-called nodes, which let you build image pipelines ranging from simple text-to-image generation to complex workflows with LoRA, ControlNet, inpainting, reference images, or multiple models.
ComfyUI supports Linux as well as NVIDIA, AMD, and Intel GPUs. Its current documentation recommends an isolated Python environment for manual installs and supports current Python and PyTorch versions. Combining it with Open WebUI is especially interesting: Open WebUI supports ComfyUI directly as an image generation backend.
Step 1: Install Ollama on Linux
On Ubuntu, Debian, Linux Mint, and many other distributions, Ollama can be installed using the official install script. If you want the full picture of installing Ollama on Linux, setting up GPU support, and using the local API, see the foundational guide Install Ollama on Linux: Run AI Locally (Read article). For this tutorial, the short version is enough:
curl -fsSL https://ollama.com/install.sh | sh
Then check:
ollama --version
ollama list
If the Ollama service isn't running automatically:
ollama serve
On typical Linux installs, the Ollama API then runs locally on port 11434.
Matching product in my shop · German-language edition
Linux Mint ohne Frust
A beginner-friendly, German-language practical guide for newcomers switching from Windows — useful if you still need to set up or troubleshoot the Linux machine you'll run this AI image pipeline on.
Step 2: Install a language model
For image generation, we don't need Ollama as a diffusion engine — first we need it as a capable language model. A reasonable starting point is:
ollama pull qwen3:8b
According to Ollama, Qwen3:8b currently needs about 5.2 GB of storage and works well for general text tasks. Test it:
ollama run qwen3:8b
Then, for example:
Write a detailed English image prompt for a
photorealistic data center at night with blue lighting.
That already covers the first part of our pipeline: user → Ollama → optimized image prompt. Now we just need the image generator.
Step 3: Install ComfyUI on Linux
For a Linux server or workstation, a manual install inside a Python virtual environment is the preferred route. On Debian or Ubuntu, first install the required packages:
sudo apt update
sudo apt install -y git python3 python3-venv python3-pip
Then download ComfyUI:
git clone https://github.com/Comfy-Org/ComfyUI.git
cd ComfyUI
Create a virtual Python environment:
python3 -m venv .venv
source .venv/bin/activate
pip install --upgrade pip
Now comes the GPU-specific part.
NVIDIA on Linux
For current NVIDIA systems, the ComfyUI project recommends a current CUDA build of PyTorch, for example:
pip install torch torchvision torchaudio \
--extra-index-url https://download.pytorch.org/whl/cu130
pip install -r requirements.txt
You can conveniently check beforehand whether the system recognizes your NVIDIA GPU at all:
nvidia-smi
If this command doesn't show a GPU, fix the NVIDIA driver installation first.
AMD on Linux
AMD GPUs are supported too. For the currently documented stable ROCm build, ComfyUI uses, for example:
pip install torch torchvision torchaudio \
--index-url https://download.pytorch.org/whl/rocm7.2
pip install -r requirements.txt
The official ComfyUI documentation also describes special builds for different RDNA generations.
Intel Arc on Linux
Intel GPUs have also become considerably more interesting for local AI. For Intel XPU, PyTorch can be installed like this, for example:
pip install torch torchvision torchaudio \
--index-url https://download.pytorch.org/whl/xpu
pip install -r requirements.txt
At this point, ComfyUI is basically installed.
Step 4: Start ComfyUI
For a pure local test, this is enough:
python main.py
For the connection to Open WebUI, though, ComfyUI needs to be reachable over the network. So start it with:
python main.py --listen 0.0.0.0
ComfyUI normally listens on http://SERVER-IP:8188. Open WebUI's ComfyUI integration explicitly points out that ComfyUI needs to be started with --listen to be reachable.
Mind your security
Port 8188 shouldn't simply be exposed to the internet unprotected. If Ollama, Open WebUI, and ComfyUI all run on the same server, access should ideally go through internal Docker networking, localhost, firewall rules, or a properly secured reverse proxy.
Matching product in my shop · German-language edition
AI in the Machine Room — or the Bible of Common Pitfalls
This German-language guide covers typical pitfalls when self-hosting AI tools on Linux, helps you interpret log and error messages correctly, and sharpens your eye for permissions and network security — exactly what you need when operating Ollama, ComfyUI, and Open WebUI.
Step 5: Which image model should you use?
Now we need an actual image generation model. FLUX.1 Schnell is a good fit for this tutorial. Why? FLUX.1 Schnell is built for fast generation and needs only a few sampling steps. This variant is released under Apache 2.0, while several other FLUX models can carry more restrictive licensing terms.
If you want the simplest possible start, use the FP8 checkpoint version. The file flux1-schnell-fp8.safetensors goes into ComfyUI/models/checkpoints/:
ComfyUI/
└── models/
└── checkpoints/
└── flux1-schnell-fp8.safetensors
ComfyUI explicitly documents this single-file variant as the easier entry point for FLUX.1 Schnell. FP8 reduces memory usage but can cost some image quality compared with higher precision.
Alternative: the full FLUX pipeline
If you have more capable hardware, you can also use the full pipeline. That requires files such as clip_l.safetensors, t5xxl_fp8_e4m3fn.safetensors, ae.safetensors, and flux1-schnell.safetensors. The directory structure then looks roughly like this:
ComfyUI/
└── models/
├── diffusion_models/
│ └── flux1-schnell.safetensors
├── text_encoders/
│ ├── clip_l.safetensors
│ └── t5xxl_fp8_e4m3fn.safetensors
└── vae/
└── ae.safetensors
This structure matches ComfyUI's official FLUX workflow. For a first attempt, though, the FP8 checkpoint version is considerably simpler.
Step 6: Run a FLUX workflow in ComfyUI
ComfyUI now ships with workflow templates and documented example workflows for numerous models, including FLUX.1 Schnell, FLUX.1 Dev, FLUX.2 Dev, FLUX.2 Klein, several Qwen image models, and other current image models.
After loading the matching FLUX workflow, first check that the correct model is selected. Then enter a prompt, for example:
A futuristic Linux server room, dark environment,
blue and cyan LED lighting, multiple rack servers,
realistic photography, cinematic lighting,
high detail, professional technology photography
Then hit Queue, or Ctrl + Enter. Once generation succeeds, the image appears in the workflow and is saved to ComfyUI's output directory.
Now we know ComfyUI + FLUX works. Time to connect it to Ollama.
Step 7: Install Open WebUI
If you already run Ollama with Open WebUI, you can skip this step. For a full walkthrough of installing, connecting, and securing Open WebUI and Ollama on Linux with Docker, see Open WebUI + Ollama on Linux: Build Your Own Local ChatGPT Alternative (Read article). For image generation, a Docker install with the ComfyUI connection enabled right away works well:
docker run -d \
-p 3000:8080 \
--add-host=host.docker.internal:host-gateway \
-e COMFYUI_BASE_URL=http://host.docker.internal:8188/ \
-e ENABLE_IMAGE_GENERATION=True \
-v open-webui:/app/backend/data \
--name open-webui \
--restart always \
ghcr.io/open-webui/open-webui:main
The key Linux-specific parameter here is --add-host=host.docker.internal:host-gateway. With native Docker on Linux, host.docker.internal doesn't automatically exist in every scenario. That's why Open WebUI documents exactly this host-gateway mapping for connecting to a ComfyUI instance running on the Docker host.
Open WebUI is then normally reachable at http://SERVER-IP:3000.
Step 8: Set up ComfyUI in Open WebUI
Now open, in Open WebUI: Admin Settings → Experience → Images. Enable image generation there. For the engine, choose ComfyUI. In our Docker example, the base URL is http://host.docker.internal:8188/.
Then verify the connection using the refresh or test button. Open WebUI officially supports ComfyUI as an image generation engine and can pass the model, image size, steps, and seed to the workflow.
Step 9: Export the ComfyUI workflow
Now comes one of the most important steps. Open WebUI doesn't need the normal ComfyUI workflow — it needs its API version. In ComfyUI, open the settings and enable Enable Dev Mode Options. Then export the working workflow via Export (API), or, depending on the ComfyUI version, Save (API Format).
Don't use the normal workflow export. Upload this JSON file under the ComfyUI configuration in Open WebUI.
Step 10: Map the nodes
Open WebUI needs to know which ComfyUI node holds which parameter. Typical parameters are:
| Function | Typical key |
|---|---|
| Prompt | text |
| Model | ckpt_name |
| Width | width |
| Height | height |
| Steps | steps |
| Seed | seed |
The node IDs, however, depend on the workflow you're using. So don't blindly copy node IDs from some random tutorial online. In the exported API JSON, you might find, for example:
"6": {
"inputs": { "text": "Prompt" }
}
In that case, node 6 is the prompt node. Or:
"3": {
"inputs": { "seed": 42, "steps": 20 }
}
Here, seed and steps are controlled through node 3. Open WebUI describes exactly this mapping procedure in its current ComfyUI documentation. For FLUX workflows, some settings may need multiple node IDs.
Step 11: Generate your first image directly in the chat
Now it gets interesting. In Open WebUI, select your Ollama model, for example qwen3:8b. Then enable the image feature in the chat integrations. Now you can write:
Generate a photorealistic image of a modern Linux
data center at night. Dark server racks, blue lighting,
professional technology look, 16:9.
Open WebUI can use this to generate an image prompt, or use the language model to craft a suitable prompt for the connected image backend. Simplified, the workflow looks like this:
User
|
v
Open WebUI
|
+--> Ollama / Qwen
| |
| Understand and refine the prompt
|
v
ComfyUI
|
v
FLUX
|
v
finished image
And all of this can run on your own Linux hardware.
How much GPU memory do you need?
For local image generation, VRAM matters more than it does for many smaller Ollama language models. As a rough guide:
| GPU memory | Reasonable starting point |
|---|---|
| 6–8 GB | smaller Stable Diffusion models |
| 8–12 GB | SDXL, optimized or quantized workflows |
| 12–16 GB | many modern FP8 workflows |
| 16 GB+ | FLUX becomes considerably more interesting |
| 24 GB+ | comfortable, larger local workflows |
Actual memory usage, however, depends heavily on the model, quantization, resolution, text encoder, batch size, and ComfyUI workflow. FP8 variants in particular are interesting for consumer GPUs. ComfyUI's documentation explicitly offers quantized FLUX variants to reduce memory requirements.
Why use Ollama at all if ComfyUI generates the image?
A fair question. You could, after all, type the prompt directly into ComfyUI. But Ollama makes the whole environment considerably smarter. From "Make me an image of a server room," a local language model can generate a far more detailed prompt, for example:
Professional cinematic photograph of a modern enterprise
data center, symmetrical server racks, dark environment,
blue LED illumination, realistic cabling, subtle reflections,
volumetric lighting, high dynamic range, ultra detailed,
professional technology photography, no people.
In effect, Ollama takes on the role of prompt engineer. And because Open WebUI connects both systems, the user doesn't have to run through this process manually every time.
Open WebUI can do even more
The ComfyUI integration isn't limited to simple text-to-image generation. Open WebUI now also supports image editing through appropriately configured ComfyUI workflows. That enables scenarios such as: "Change the background of this image to a data center," or "Remove the object on the left and replace it with a server rack."
These features do require a matching image-editing workflow and a model that supports inpainting or image-to-image generation, though. Open WebUI now treats image generation and image editing as separate engines and configurations.
Common issue: Open WebUI can't reach ComfyUI
If Open WebUI runs in Docker and ComfyUI was started directly on the Linux host, this address won't work inside the container: http://localhost:8188. That's because localhost there refers to the Open WebUI container itself.
That's why we use http://host.docker.internal:8188 and start Open WebUI on Linux with --add-host=host.docker.internal:host-gateway. The official Open WebUI tutorial includes exactly this Linux-specific instruction.
Common issue: ComfyUI only listens on localhost
If ComfyUI is simply started with python main.py, depending on the configuration the service may only be reachable locally. For the integration, we therefore use python main.py --listen 0.0.0.0. Afterward, verify with:
ss -tulpen | grep 8188
Common issue: the workflow works in ComfyUI but not in Open WebUI
In this case, the wrong JSON was very often exported. You need the API workflow. So: enable Dev Mode → Export (API) → upload the JSON in Open WebUI. Then double-check the node mapping.
Especially with FLUX, a parameter's key can differ from classic Stable Diffusion workflows. Open WebUI, for example, notes that seeds can appear under a name like noise_seed depending on the workflow.
Privacy: why this setup is interesting for businesses
This architecture has a decisive advantage: prompts and images generally don't have to leave your own system. Ollama can run the language model locally. ComfyUI can run the image model locally. Open WebUI can be self-hosted.
That creates an interesting foundation for businesses, developers, or creative teams who don't want to send confidential product ideas, drafts, internal information, or prompts to an external image generation service.
That said, the usual caveat still applies: running something locally doesn't automatically make a system secure. Authentication, network segmentation, updates, model licenses, backups, user permissions, and securing Open WebUI and ComfyUI all remain important tasks. In particular, ComfyUI shouldn't simply be exposed to the internet on port 8188.
Ollama image generation on Linux: what's next?
Interestingly, this whole setup may well get simpler in the future. Ollama's own image generation can already work with models such as Z-Image Turbo and FLUX.2 Klein. FLUX.2 Klein, for example, is specifically designed for fast image generation and comes in 4B and 9B parameter variants. Ollama also highlights its capabilities for readable text inside generated images.
Once Ollama officially releases its native image generation for Linux, "Ollama + Open WebUI + ComfyUI + FLUX" could, in some scenarios, actually become just "Ollama + image model." For simple text-to-image tasks, that would be enormously convenient. ComfyUI is likely to stay relevant regardless: anyone who needs LoRAs, ControlNet, inpainting, complex workflows, multiple models, reference images, or reproducible production pipelines gets considerably more control with ComfyUI.
Ollama or ComfyUI? The wrong question
Ollama and ComfyUI aren't direct competitors. They solve different problems. Ollama excels at making open language and multimodal models easy to run locally. ComfyUI excels at executing complex generative image pipelines. Open WebUI connects the two.
On Linux especially, the question right now isn't "Ollama or ComfyUI?" — it's "why not Ollama and ComfyUI together?"
Conclusion: local AI image generation on Linux already works great
As of August 31, 2026, native Ollama image generation is officially not yet available on Linux. That doesn't mean Linux users have to wait, though. With Ollama, Open WebUI, ComfyUI, and FLUX, you can already build a capable local AI platform today: Ollama understands the request, the language model creates or improves the prompt, Open WebUI orchestrates the process, ComfyUI runs the workflow, and FLUX generates the image. And all of it can run on your own hardware.
For Linux enthusiasts, this combination may even be more interesting than a plain image generation feature built into Ollama: it pairs Ollama's simple local LLM management with ComfyUI's enormous flexibility. Once Ollama officially ships native image generation for Linux, this landscape will shift again. Until then, Ollama + Open WebUI + ComfyUI is one of the most practical ways to run language models and local AI image generation on Linux in a single environment.
Quick answer for Google / featured snippet
Can Ollama generate images on Linux? Since January 2026, Ollama has had an experimental native image generation feature with models such as Z-Image Turbo and FLUX.2 Klein. It isn't officially offered for Linux yet, though. On Linux, image generation can already be achieved today by combining Ollama with Open WebUI and ComfyUI. Ollama handles the language model and prompting, while ComfyUI runs, for example, FLUX for the actual image generation.
FAQ: Ollama and image generation on Linux
Can Ollama generate images in 2026?
Yes. Ollama introduced experimental image generation in January 2026. Supported models include Z-Image Turbo and FLUX.2 Klein. The native feature launched first for macOS.
Does Ollama image generation work on Linux?
According to Ollama's own documentation, native Ollama image generation is not officially available for Linux yet. On Linux, however, Ollama can be combined with ComfyUI and Open WebUI without any problem.
Can I run FLUX locally on Linux?
Yes. ComfyUI supports several FLUX versions on Linux, including FLUX.1 Schnell, FLUX.1 Dev, and newer FLUX models.
Do I need an NVIDIA GPU?
No. Besides NVIDIA, ComfyUI also supports AMD and Intel GPUs. Installation and acceleration steps differ depending on the hardware, though.
Does the image generation run entirely locally?
Yes, as long as Ollama, Open WebUI, ComfyUI, and the image model you use all run locally. Some models or nodes can optionally use external APIs, so avoid those cloud components if you want a fully local setup.
Which model is a good starting point?
For a simple local starting point, FLUX.1 Schnell in its FP8 variant is worth trying. The model needs only a few sampling steps, and the FP8 version reduces memory usage compared with higher-precision variants.
Can Open WebUI generate images directly in the chat?
Yes. Open WebUI supports ComfyUI, among others, as an image generation backend. Once configured, image generation can be triggered directly from the chat.
Related topics
Install Ollama on Linux: Run AI Locally (Read article)
Open WebUI + Ollama on Linux: Build Your Own Local ChatGPT Alternative (Read article)
Sources and currency: Article status: August 31, 2026. The technical review relied in particular on Ollama's official announcement of its experimental image generation feature, the ComfyUI installation documentation for NVIDIA, AMD, and Intel GPUs, and the Open WebUI documentation on the ComfyUI integration.