5.5 KiB
title: code-server created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, development, ide, code-editor, web-ide] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Development, https://github.com/coder/code-server]
💻 code-server
VS Code dans le navigateur — exécutez l'éditeur de Microsoft sur un serveur distant et accédez-y depuis n'importe quel poste via une URL.
📋 Informations Générales
| Attribut | Valeur |
|---|---|
| Nom | code-server |
| Slug | code-server |
| Description | VS Code exécuté à distance, accessible via le navigateur (web IDE) |
| Site officiel | https://coder.com |
| Repository | https://github.com/coder/code-server |
| Stars | 77 848 ⭐ |
| Licence | MIT |
| Langage principal | TypeScript |
| Catégorie | Development |
| Tags | [catalogue, development, ide, code-editor, web-ide] |
📝 Description
code-server est un projet open source (MIT) maintenu par la société Coder qui permet d'exécuter VS Code sur un serveur distant et d'y accéder via un navigateur web. L'UX est strictement identique à VS Code desktop : mêmes raccourcis, mêmes extensions Marketplace (à condition d'activer le téléchargement), même support du terminal intégré et du debug. La différence majeure est qu'aucun code n'est stocké sur la machine cliente : tout vit sur le serveur.
C'est l'outil idéal pour transformer un serveur Linux headless (VPS, NAS, Raspberry Pi) en poste de développement à distance : on code depuis un Chromebook, une tablette, ou un PC léger. Coder (la société) édite également une version enterprise (Coder OSS → Coder Platform) qui ajoute le multi-workspace, le partage via lien, la gestion RBAC et un provisionnement Terraform/Pulumi — mais elle est payante et distincte du binaire code-server open source.
Cas d'usage : coder depuis une machine peu puissante (Chromebook, iPad), uniformiser l'environnement de dev d'une équipe (même OS, mêmes extensions), préserver le code sur un serveur sauvegardé plutôt que sur des laptops volatils.
🚀 Installation
Via Docker (recommandé)
# docker-compose.yml
version: "3.8"
services:
code-server:
image: linuxserver/code-server:latest
container_name: code-server
ports:
- "8443:8443"
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/Paris
- HASHED_PASSWORD= # générer avec echo "mypass" | npx argon2-cli -e
volumes:
- ./config:/config
- ./projects:/projects # code stocké ici
restart: unless-stopped
Installation manuelle
# Installation en une ligne (Linux x86_64)
curl -fsSL https://code-server.dev/install.sh | sh
# Démarrage du service systemd
sudo systemctl enable --now code-server@$USER
# Accès par défaut : http://localhost:8080
# Le mot de passe s'affiche dans les logs au premier lancement
Configuration via ~/.config/code-server/config.yaml : bind-addr, auth, cert, cert-key, disable-telemetry.
⚙️ Configuration
- HTTPS obligatoire en production : soit via reverse-proxy (Traefik, Caddy, Nginx), soit en activant
certetcert-keydirectement (Let's Encrypt + DNS challenge). - Mot de passe :
HASHED_PASSWORD(Argon2id) ouPASSWORDen clair — toujours via variable d'environnement, jamais dans le compose. - Extensions :
EXTENSIONS_GALLERYpermet de pointer vers un marketplace interne (open-vsx.org si l'on veut éviter la télémétrie Microsoft). - disable-telemetry : recommandé, désactive la remontée d'usage.
- Proxy : derrière Traefik, ajouter
X-Forwarded-Proto: httpspour que les WebSockets du terminal fonctionnent.
🔗 Alternatives
- Coder (Coder OSS / Platform) — La version enterprise, multi-workspace, avec provisioning Terraform — l'éditeur du projet code-server.
- OpenVSCode Server — Fork de code-server par Gitpod, plus orienté développement cloud.
- Eclipse Theia — IDE cloud compatible VS Code mais plus « framework » à customiser.
- Gitpod / GitHub Codespaces — Services cloud managés, payants, pas de self-host simple.
🔒 Sécurité
- Ne JAMAIS exposer code-server sans HTTPS ni sans authentification : un accès libre donne un terminal root sur le serveur.
- Sudo dans le container : l'image
linuxserver/code-serverne contient pas sudo, mais l'utilisateur par défaut peut exécuter n'importe quelle commande — limiter les capabilities Docker et éviter--privileged. - Persistance des fichiers : si le volume
./projectsn'est pas sauvegardé, le code disparaît avec le container. - Network : en plus de l'auth, placer un reverse-proxy avec rate-limiting et fail2ban (voir securisation-home-lab).
- Désactiver la télémétrie (
DISABLE_TELEMETRY=1) etsettings.telemetry.telemetryLevel: "off"dans VS Code.
📚 Ressources
- Site officiel
- Documentation code-server
- Repository GitHub
- Selfh.st — code-server
- LinuxServer.io image
🔗 Pages Liées
- cat-development — Catégorie Development
- app-traefik — Reverse-proxy HTTPS recommandé
- app-gitea — Forge Git à coupler avec l'IDE
- securisation-home-lab — Sécurité de l'accès web distant
- recettes-docker-compose — Templates Docker Compose