tiennm99 c20aed29cb feat(paseo)!: drop go and sdkman, rename AGENT_CLIS to AGENTS
The image installs python, gh, glab, build-essential, sudo, zsh and nano
only; go or a jvm goes into $HOME from a terminal instead.

SHELL and TZ are written into compose.yml rather than read from .env, so
the deploying shell's own values can no longer win over them.

The entrypoint calls chpasswd, chown and gosu by absolute path, tolerates
a chpasswd failure instead of taking the start down with it, turns
globbing off around the agent loop, and counts an agent as installed only
when its binary actually runs.
2026-09-18 11:39:09 +07:00
2026-08-14 08:57:46 +07:00

composes

My docker compose collection — one directory per service, each self-contained. Tuned to my own setup rather than written as general-purpose templates.

Services are deployed through Coolify and Dokploy, which own what a standalone compose file would otherwise declare:

  • No published ports. The platform attaches the container to its proxy network and maps a domain to the internal port. Publishing one would also expose it on the host.
  • No restart: policy. The platform manages the container lifecycle.
  • No container_name:. Compose derives it from the directory.

Services that do publish ports or set restart: say so in their own README.

Layout

<service>/
  compose.yml     # the service definition
  README.md       # what it is, its variables, how it's wired
  .env.example    # required variables, committed
  .env            # real values, gitignored

Compose names the project after its directory, so code-server/ comes up as the code-server project with its own network and volumes.

Usage

In Coolify or Dokploy, point a Docker Compose resource at the service directory and set the environment variables from its .env.example.

Locally:

cd <service>
cp .env.example .env    # then fill it in
docker compose up -d
docker compose logs -f
docker compose down

.env is picked up automatically because it sits next to compose.yml. Never commit it — the root .gitignore covers .env/*.env and re-includes .env.example.

Services

Each links to its own README for variables, ports, and storage.

Service What it is
alloy Grafana Alloy shipping host and Docker telemetry to Grafana Cloud
code-server VS Code in the browser, as a remote dev box
code-server-base VS Code in the browser, stock image with no mods
couchbase Couchbase Server
gitea-mirror-local Gitea + PostgreSQL + gitea-mirror, mirroring GitHub repos
netdata Netdata monitoring agent
ollama Ollama LLM server
paseo Paseo coding-agent daemon and web UI
traffmonetizer TraffMonetizer bandwidth-sharing client

Licensed under Apache 2.0 — see LICENSE.

S
Description
Docker Compose files for the services I self-host — Gitea mirror, Couchbase, code-server, Grafana Alloy, coding-agent UIs and more — deployed through Coolify and Dokploy
Readme Apache-2.0
386 KiB
0 Stars 1 Watchers 0 Forks
Languages
Shell 89.7%
Dockerfile 10.3%