code-server-dind/README.es.md
Astound f2d9d176d5
All checks were successful
release / release-default (push) Successful in 1h3m6s
update README.md
2025-07-13 13:32:12 -05:00

2.0 KiB

🐳 code-server Dev Container con Docker-in-Docker

Un contenedor de desarrollo impulsado por code-server, con soporte completo para Docker usando Docker-in-Docker (DinD). Todo se configura fácilmente mediante variables de entorno en .env.

Características

  • 💻 code-server (VS Code en el navegador)
  • 🐳 Docker-in-Docker (DinD)
  • 🔐 Autenticación por contraseña o hash
  • 👤 Configuración dinámica de usuario (UID, GID, contraseña)
  • ⚙️ Herramientas preinstaladas: Docker, AWS CLI v2, kubectl, eksctl, Node.js, Python, Java, pre-commit, y más.

Construcción

docker build -t code-server-dind .

Configuración por Entorno (.env)

Crea un archivo .env con tus preferencias:

DOCKER_USER=coder
UID=1000
GID=1000
TZ=Asia/Taipei
PASSWORD=tucontraseña
# O alternativamente:
# HASHED_PASSWORD=$argon2id$v=19$m=65536,t=3,p=4$...

Nota: Solo debes definir PASSWORD o HASHED_PASSWORD. Usa PASSWORD=none para desactivar la autenticación.

Ejecución

docker run --rm -it \
  --privileged \
  -v code-server-home:/home/coder \
  --env-file .env \
  -p 8080:8080 \
  code-server-dind

Volumen

Todo el trabajo se guarda en /home/coder, montado mediante el volumen code-server-home.

Modos de Autenticación

  • PASSWORD=tuclave: contraseña en texto plano.
  • HASHED_PASSWORD=...: contraseña pre-hasheada (segura).
  • PASSWORD=none: sin autenticación (no recomendado en producción).

Acceso

Una vez corriendo, visita: http://localhost:8080 Inicia sesión con las credenciales de tu archivo .env.

Herramientas Incluidas

  • Docker CLI
  • AWS CLI v2
  • kubectl (v1.33.0)
  • eksctl
  • Node.js + npm
  • Python 3 + pipx + venv
  • Java (default-jre)
  • pre-commit
  • siege, jq, git, y más.

Limpieza

docker volume rm code-server-home

Licencia

Este documento se distribuye bajo los términos de la GNU General Public License v3 o posterior. Ver el archivo LICENSE para más detalles.