Local infrastructure for exploring and consuming open language models in an ethical and sustainable way.
https://slm.eher.com.br
Remove legacy OpenClaw, firewall, and IRC artifacts, rename terminal service, and streamline docs/config around OpenWebUI + Ollama + Tinyproxy. Keep app traffic on an internal LAN and route outbound internet through Tinyproxy with a dedicated WAN network. |
||
|---|---|---|
| open-terminal | ||
| tinyproxy | ||
| .env.dist | ||
| .gitignore | ||
| docker-compose.yml | ||
| README.md | ||
slm
Small Language Models local stack with Open WebUI, Ollama, Open Terminal, and a constrained outbound proxy.
Services
| Service | Image / Build | Function |
|---|---|---|
ollama |
ollama/ollama:rocm |
Local LLM backend (AMD/ROCm). |
openwebui |
ghcr.io/open-webui/open-webui:main |
Web chat UI connected to ollama. |
terminal |
Local build (open-terminal/Dockerfile) |
Development terminal for Open WebUI workflows. |
tinyproxy |
Local build (tinyproxy/Dockerfile) |
HTTP/HTTPS proxy with domain allowlist in tinyproxy/filter. |
Network
lan: internal-only bridge for app-to-app trafficwan: egress bridge used only bytinyproxyfor outbound internet access- OpenWebUI exposed on host port
${OPENWEBUI_PORT}(default8080)
Outbound policy
- Services use
HTTP_PROXYandHTTPS_PROXYpointing tohttp://tinyproxy:8888. - Allowed destinations are controlled by
tinyproxy/filter. - Internal service-to-service traffic bypasses proxy via
NO_PROXY.
Quick start
- Create environment file:
cp .env.dist .env
- Generate terminal API key:
echo "OPEN_TERMINAL_API_KEY=$(openssl rand -hex 32)" >> .env
- Start the stack:
docker-compose up -d
- Access Open WebUI:
http://<host>:${OPENWEBUI_PORT}(default8080)
Day-to-day commands
# Start
docker-compose up -d
# Logs
docker-compose logs -f openwebui
docker-compose logs -f ollama
docker-compose logs -f terminal
docker-compose logs -f tinyproxy
# Status
docker-compose ps
# Stop
docker-compose down
Proxy allowlist updates
- Edit
tinyproxy/filter. - Rebuild only proxy service:
docker-compose up -d --build tinyproxy