Docker: code-server (VS Code en el navegador) - para qué sirve y cómo instalarlo

Logo de code-server (VS Code en el navegador)

Imagen Docker del curso, nº 7. code-server ejecuta Visual Studio Code en un servidor y lo abres desde el navegador, de forma que tu entorno de desarrollo está accesible desde cualquier equipo, incluso una tablet.

¿Para qué sirve?

  • Programar desde cualquier dispositivo con tu entorno ya configurado.

Instalación con docker run

Este es el comando del README oficial (cambia las rutas /path/to/... por carpetas de tu equipo):

docker run -d \
  --name=code-server \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Etc/UTC \
  -e PASSWORD=password `#optional` \
  -e HASHED_PASSWORD= `#optional` \
  -e SUDO_PASSWORD=password `#optional` \
  -e SUDO_PASSWORD_HASH= `#optional` \
  -e PROXY_DOMAIN=code-server.my.domain `#optional` \
  -e DEFAULT_WORKSPACE=/config/workspace `#optional` \
  -e PWA_APPNAME=code-server `#optional` \
  -p 8443:8443 \
  -v /path/to/code-server/config:/config \
  --restart unless-stopped \
  lscr.io/linuxserver/code-server:latest

Instalación con Docker Compose

Ejemplo de docker-compose.yml del README oficial. Guárdalo como docker-compose.yml y ejecuta docker compose up -d:

services:
  code-server:
    image: lscr.io/linuxserver/code-server:latest
    container_name: code-server
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - PASSWORD=password #optional
      - HASHED_PASSWORD= #optional
      - SUDO_PASSWORD=password #optional
      - SUDO_PASSWORD_HASH= #optional
      - PROXY_DOMAIN=code-server.my.domain #optional
      - DEFAULT_WORKSPACE=/config/workspace #optional
      - PWA_APPNAME=code-server #optional
    volumes:
      - /path/to/code-server/config:/config
    ports:
      - 8443:8443
    restart: unless-stopped

Lo más útil del README

  • Se accede en http://TU-IP:8443.
  • Para integrar GitHub, copia tu clave SSH en /config/.ssh y configura tu nombre y correo con git config --global user.name y user.email desde el terminal integrado.
  • El README explica cómo guardar la contraseña en formato hash.

Consejos

  • Sustituye siempre las rutas de ejemplo por carpetas reales de tu equipo.
  • Comprueba que el contenedor está activo con docker ps y revisa los logs con docker logs NOMBRE.
  • Cambia las contraseñas por defecto antes de exponer el servicio fuera de tu red.

Antes de empezar con code-server (VS Code en el navegador)

Necesitas un equipo con Docker instalado y funcionando. Comprueba la versión con docker --version y la de Compose con docker compose version. Si tu usuario no está en el grupo docker, tendrás que anteponer sudo a los comandos. Mira también que el puerto 8443 estén libres con ss -tulpn | grep 8443: si otro servicio usa alguno, el contenedor no arrancará y tendrás que elegir otro puerto en la parte izquierda de la asignación.

Cómo comprobar que code-server (VS Code en el navegador) funciona

Después de arrancar el contenedor, ejecuta docker ps y busca code-server en la lista con estado Up. Si aparece reiniciándose o desaparece al poco rato, lee el motivo con docker logs -f code-server; casi siempre es una ruta mal escrita o un permiso. Cuando esté estable, si la aplicación tiene interfaz web, ábrela en el navegador con la dirección y el puerto que indica el README oficial. Dale un minuto en el primer arranque, porque algunas aplicaciones preparan su base de datos antes de aceptar conexiones.

Dónde se guardan los datos

En el ejemplo se montan estas rutas: /path/to/code-server/config:/config. La parte de la izquierda es la carpeta de tu equipo y la de la derecha es la ruta dentro del contenedor. Todo lo que quieras conservar debe estar en una carpeta montada, porque lo que queda dentro del contenedor se pierde si lo eliminas. Crea las carpetas antes de arrancar, con el usuario que vaya a usarlas, para evitar errores de permisos.

Cómo actualizar code-server (VS Code en el navegador)

Para actualizar con Compose, ve a la carpeta del docker-compose.yml y ejecuta docker compose pull seguido de docker compose up -d. Docker descarga la imagen nueva y recrea el contenedor sin tocar tus carpetas montadas. Después puedes limpiar imágenes viejas con docker image prune.

Copia de seguridad de code-server (VS Code en el navegador)

Antes de actualizar o cambiar nada, copia las carpetas que montaste. Lo más seguro es parar el contenedor con docker stop code-server, comprimir la carpeta con tar czf copia-code-server.tar.gz /ruta/a/tu/carpeta y volver a arrancarlo con docker start code-server. Guarda la copia en otro disco o en otro equipo, y prueba a restaurarla de vez en cuando: una copia que nunca has probado no es una garantía.

Fuentes: README en GitHub · Docker Hub

Te puede interesar

Comentarios

Entradas populares de este blog

Cómo instalar Hermes Agent en Docker y conectarlo con tu suscripción de Antigravity

Docker: OpenBao - para qué sirve y cómo instalarlo

Cómo funciona Docker Compose