The LinuxServer image as it ships, with no mods and no extra packages, as the starting point for a new instance.
1.7 KiB
code-server-base
VS Code in the browser, from the LinuxServer image, stock.
The starting point for a new code-server instance: the image as it ships, with
no mods and no extra packages. Only a password, a timezone, and a workspace
path are set. Copy the directory and add DOCKER_MODS / INSTALL_PACKAGES to
build a kitted-out box — code-server is that same
image with Go, Node.js, Python, and a pile of CLI tools layered on.
Both use a volume named code-server-config, but Compose namespaces volumes by
project and the project is named after the directory, so the two instances stay
independent.
Environment
| Variable | Purpose |
|---|---|
PASSWORD |
Web UI login, also the in-container sudo password. A blank value disables authentication entirely. |
Generate a password with openssl rand -base64 24.
PUID/PGID are pinned to 1000 and TZ to Asia/Ho_Chi_Minh in the
compose file — the first user on my hosts, and my timezone. Change them in
place if neither holds.
The upstream example also offers HASHED_PASSWORD, SUDO_PASSWORD_HASH, and
PROXY_DOMAIN. The hash variants are left out because the plaintext ones
already come from a gitignored .env, and PROXY_DOMAIN because Coolify and
Dokploy terminate the domain at their own proxy.
Networking
Listens on 8443. No ports are published — point the domain at that port in
Coolify or Dokploy. See the root README for why.
Storage
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.