tiennm99 34591b7e27 refactor(code-server): drop Codex access token
No longer used; removes the CODEX_ACCESS_TOKEN variable from the service
definition and its example env file.
2026-08-14 09:25:24 +07:00
2025-04-07 12:44:18 +07:00
2025-03-25 21:58:42 +07:00
2025-03-25 22:04:48 +07:00
2026-08-14 08:57:46 +07:00

composes

My docker compose collection — one directory per service, each self-contained.

These are tuned to my own setup, not written as general-purpose templates. They are deployed through Coolify and Dokploy, so they lean on the platform for things a standalone compose file would normally declare:

  • No published ports. Both platforms attach the container to their proxy network and map a domain directly to the internal port, so ports: is unnecessary — and adding it would expose the host port as well.
  • No restart: policy. The platform manages the container lifecycle.

Treat them as working examples rather than drop-in configs. Running one with plain docker compose means adding whatever your setup needs.

Layout

<service>/
  compose.yml     # the service definition
  .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, for a quick check:

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

code-server

VS Code in the browser, from the LinuxServer image, set up as a full remote dev box.

Comes with Go, Node.js 24, Python 3, pnpm, and zsh via LinuxServer mods, plus gh, git, ffmpeg, imagemagick, and other CLI tools through INSTALL_PACKAGES. Git author/committer identity is injected from .env.

Everything lives in the code-server-config named volume mounted at /config; the default workspace is /config/workspace. Removing the volume wipes your files, settings, and extensions.

Variable Purpose
PASSWORD Web UI login, also the in-container sudo password. A blank value disables authentication entirely.
GIT_NAME / GIT_EMAIL Git author and committer identity
CODEX_ACCESS_TOKEN OpenAI Codex CLI auth; leave blank if unused

Generate a password with openssl rand -base64 24.

Listens on 8443 — point the domain at that port in Coolify or Dokploy.

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
383 KiB
0 Stars 1 Watchers 0 Forks
Languages
Shell 89.7%
Dockerfile 10.3%