# Mezclar los dos docker-compose en `vscode-server/docker-compose.yaml` ## Context Existen dos entornos de desarrollo casi idénticos: - [dev-environment/vscode-server/docker-compose.yaml](dev-environment/vscode-server/docker-compose.yaml) — usuario `aleleba`, túnel `vscode-aleleba`, rutas de host base `/home/aleleba/nas/docker/`. - [dev-environment/vscode-server-telus/docker-compose.yaml](dev-environment/vscode-server-telus/docker-compose.yaml) — usuario `aleleba-telus`, túnel `vscode-aleleba-telus`, rutas de host base `/Volumes/docker/` (estilo Mac). Se quiere un único archivo que combine ambos: conservar la identidad personal (`aleleba` / `vscode-aleleba`) pero usar la ruta base de host `/Volumes/docker/` del entorno telus, dejando comentada la ruta anterior de host. Además debe montar **los dos** volúmenes de proyectos (`projects` y `projects-telus`). El resultado se escribe **modificando** el archivo `vscode-server/docker-compose.yaml`. ## Decisiones confirmadas - Túnel: `vscode-aleleba` — Usuario: `HOME_USER: aleleba` (sin cambios; ya son los valores de este archivo). - Ruta base de host **activa**: `/Volumes/docker/`. - Llaves SSH (`id_key`, `id_key.pub`, `id_rsa`, `id_rsa.pub`, `known_hosts`): usar también base uniforme `/Volumes/docker/projects/synology-apps-containers/dev-environment/...` (NO la ruta `/Users/a.barrientes/...` del archivo telus). - Segundo volumen de proyectos `projects-telus` se monta en `/home/aleleba/projects-telus`. - Todos los targets del contenedor usan `/home/aleleba/...` (porque el usuario es `aleleba`). ## Cambios a realizar (solo en `dev-environment/vscode-server/docker-compose.yaml`) La sección `environment:` no cambia (ya tiene `HOME_USER: aleleba` y `VSCODE_TUNNEL_NAME: vscode-aleleba`). Reescribir el bloque `volumes:` de modo que **cada** volumen tenga tres líneas: 1. `# - /volume1/docker/...` (comentada, se conserva). 2. `# - /home/aleleba/nas/docker/...` (comentada — la ruta anterior de este archivo, ahora comentada según lo pedido). 3. `- /Volumes/docker/...` (activa — la ruta base nueva). Patrón por volumen (ejemplo con `projects`): ```yaml # - /volume1/docker/projects:/home/aleleba/projects # - /home/aleleba/nas/docker/projects:/home/aleleba/projects - /Volumes/docker/projects:/home/aleleba/projects ``` Añadir el segundo volumen de proyectos justo después de `projects`: ```yaml # - /volume1/docker/projects-telus:/home/aleleba/projects-telus - /Volumes/docker/projects-telus:/home/aleleba/projects-telus ``` Aplicar el mismo patrón (línea activa `/Volumes/docker/...`, target `/home/aleleba/...`) a todos los volúmenes existentes: `certs`, `.gnupg`, `.npmrc`, `gh config.yml`, `gh hosts.yml`, `.gitconfig`, las 5 llaves SSH/`known_hosts`, `docker.config.json`, `kubernetes.config`, `daemon.json`, `vscode-server/custom-scripts`, `vscode-server/extensions.json`, `.claude.json`, `claude.settings.json`, `claude-plans`, `claude-plugins`, `claude-sessions`, `claude-skills`, `claude-commands`, `claude-hooks`, `claude-agents`. Notas de mapeo: - Se conservan los sub-paths propios de este archivo (p. ej. `vscode-server/custom-scripts` y `vscode-server/extensions.json`, NO los `vscode-server-telus/...`) y `claude.settings.json` (NO `claude-telus.settings.json`). - Las llaves SSH quedan en `/Volumes/docker/projects/synology-apps-containers/dev-environment/id_key` → `/home/aleleba/.ssh/id_key`, etc. ## Verificación Desde `dev-environment/vscode-server/`: ```bash docker compose config ``` Debe validar sin errores de YAML y mostrar el servicio `vscode-server` con: - `HOME_USER=aleleba`, `VSCODE_TUNNEL_NAME=vscode-aleleba`. - Todos los binds resueltos desde `/Volumes/docker/...`. - Ambos montajes: `/home/aleleba/projects` y `/home/aleleba/projects-telus`. (Opcional) Revisar visualmente que cada volumen tiene su línea `/home/aleleba/nas/docker/...` comentada.