Herramientas
Rediacc ofrece cuatro herramientas para el trabajo diario en sus máquinas y repositorios: sincronización de archivos sobre SSH, un terminal SSH, integración con VS Code y actualizaciones automáticas de la CLI. Los cuatro funcionan sobre SSH. No se requiere agente ni demonio en el lado remoto. Si necesita una interfaz gráfica para cualquiera de esto, está buscando en la página equivocada.
Sincronización de Archivos (sync)
Transfiera archivos entre su estación de trabajo y un repositorio remoto usando rsync sobre SSH.
Subir Archivos
--local acepta una o más rutas. Cada ruta puede ser un archivo o un directorio. Los archivos se colocan en <remote>/<basename>; el contenido del directorio se fusiona en <remote>/. Para un único archivo, prefiera --remote-file para proporcionar la ruta de destino explícitamente.
# Directorio (contenido fusionado en remoto)
rdc repo sync upload -m server-1 -r my-app --local ./src --remote /app/src
# Archivo único colocado en un directorio remoto (nombre base preservado)
rdc repo sync upload -m server-1 -r my-app --local ./config.yml --remote /app/conf
# Archivo único, ruta de destino explícita
rdc repo sync upload -m server-1 -r my-app --local ./config.yml --remote-file /app/conf/config.yml
# Múltiples fuentes en una sola llamada
rdc repo sync upload -m server-1 -r my-app --local a.yml b.yml ./assets --remote /app
--remote y --remote-file se excluyen mutuamente. --remote-file requiere exactamente una ruta --local que apunte a un archivo.
--mirror no puede combinarse con una fuente de archivo; eliminaría archivos hermanos en el directorio remoto.
Descargar Archivos
Use --remote para un directorio (el predeterminado) o --remote-file para un único archivo. Los dos flags se excluyen mutuamente.
# Directorio
rdc repo sync download -m server-1 -r my-app --remote /app/data --local ./data
# Archivo único: --local debe ser un directorio existente
rdc repo sync download -m server-1 -r my-app --remote-file /app/conf/config.yml --local ./local-conf
Verificar Estado de Sincronización
rdc repo sync status -m server-1 -r my-app
Opciones
| Opción | Descripción |
|---|---|
-m, --machine <name> | Máquina destino |
-r, --repository <name> | Repositorio destino |
--local <paths...> | Una o más rutas locales de archivo o directorio (subida) o directorio local de destino (descarga) |
--remote <path> | Directorio remoto (relativo al montaje del repositorio) |
--remote-file <path> | Ruta de archivo remoto para descargas o subidas de archivo único (alternativa a --remote) |
--dry-run | Previsualizar cambios sin transferir |
--mirror | Duplicar origen en destino, eliminar archivos extra (solo fuentes de directorio) |
--verify | Verificar checksums después de la transferencia |
--confirm | Confirmación interactiva con vista detallada |
--exclude <patterns...> | Excluir patrones de archivos |
--skip-router-restart | Omitir el reinicio del servidor de rutas después de la operación |
Terminal SSH (term)
Abra una sesión SSH interactiva a una máquina o al entorno de un repositorio.
Sintaxis Abreviada
La forma más rápida de conectarse:
rdc term connect -m server-1 # Conectarse a una máquina
rdc term connect -m server-1 -r my-app # Conectarse a un repositorio
Ejecutar un Comando
Ejecute un comando sin abrir una sesión interactiva:
rdc term connect -m server-1 -c "uptime"
rdc term connect -m server-1 -r my-app -c "docker ps"
Al conectarse a un repositorio, DOCKER_HOST se configura automáticamente al socket Docker aislado del repositorio, por lo que docker ps muestra solo los contenedores de ese repositorio.
Subcomando Connect
O use el subcomando connect para el mismo resultado, con flags explícitos:
rdc term connect -m server-1
rdc term connect -m server-1 -r my-app
Acciones de Contenedor
Interactúe directamente con un contenedor en ejecución:
# Abrir una shell dentro de un contenedor
rdc term connect -m server-1 -r my-app --container <container-id>
# Ver logs del contenedor
rdc term connect -m server-1 -r my-app --container <container-id> --container-action logs
# Seguir logs en tiempo real
rdc term connect -m server-1 -r my-app --container <container-id> --container-action logs --follow
# Ver estadísticas del contenedor
rdc term connect -m server-1 -r my-app --container <container-id> --container-action stats
# Ejecutar un comando en un contenedor
rdc term connect -m server-1 -r my-app --container <container-id> --container-action exec -c "ls -la"
| Opción | Descripción |
|---|---|
--container <id> | ID del contenedor Docker destino |
--container-action <action> | Acción: terminal (predeterminado), logs, stats, exec |
--log-lines <n> | Número de líneas de log a mostrar (predeterminado: 50) |
--follow | Seguir logs continuamente |
--external | Usar terminal externo en lugar de SSH en línea |
Integración con VS Code (vscode)
Abra una sesión SSH remota en VS Code, preconfigurada con los ajustes SSH correctos.
Conectarse a un Repositorio
rdc vscode connect -r my-app -m server-1
Este comando:
- Detecta su instalación de VS Code
- Configura la conexión SSH en
~/.ssh/config - Persiste la clave SSH para la sesión
- Abre VS Code con una conexión Remote SSH a la ruta del repositorio
Listar Conexiones Configuradas
rdc vscode list
Limpiar Conexiones
rdc vscode cleanup
Elimina configuraciones SSH de VS Code que ya no son necesarias.
Verificar Configuración
rdc vscode check
Verifica la instalación de VS Code, la extensión Remote SSH y las conexiones activas.
Prerrequisito: Instale la extensión Remote - SSH en VS Code.
VS Code en el navegador
¿No tiene VS Code instalado? Sirva el editor desde dentro del sandbox del repositorio y ábralo en cualquier navegador:
rdc vscode connect -r my-app -m server-1 --browser
Este comando:
- Instala el servidor del editor open-source en la máquina una sola vez (ruta compartida de solo lectura, verificada por checksum)
- Lo arranca dentro del sandbox del repositorio, de modo que el árbol de archivos, la terminal integrada y todos los procesos hijo ven exactamente lo que ve el repositorio
- Abre un túnel SSH a un puerto local y lanza el navegador con una URL de token por sesión
El servidor sigue ejecutándose después de cerrar el túnel; al reconectar lo reutiliza. Gestiónelo con:
rdc vscode serve status -r my-app -m server-1
rdc vscode serve stop -r my-app -m server-1
| Opción | Descripción |
|---|---|
--no-open | Imprime la URL en lugar de abrir el navegador |
--url-only | Imprime exactamente una línea con la URL en stdout (para scripting) y mantiene el túnel |
--local <port> | Elige el puerto local del túnel |
--server-provider <id> | Implementación del servidor del editor: openvscode (predeterminado) o code-server |
--server-archive <file> | Instala desde un tarball prealmacenado en la máquina (sin acceso a internet) |
Funciona desde Linux, macOS, Windows o una tablet. El único requisito local es un navegador.
Actualizaciones de la CLI (update)
Mantenga la CLI rdc actualizada.
Buscar Actualizaciones
rdc update --check-only
Aplicar Actualización
rdc update
Las actualizaciones se descargan y aplican en el lugar. La CLI selecciona automáticamente el binario correcto para su plataforma (Linux, macOS o Windows). La nueva versión entra en efecto en la siguiente ejecución.
Revertir
rdc update --rollback
Revierte a la versión previamente instalada. Solo disponible después de que se haya aplicado una actualización.
Estado de Actualización
rdc update --status
Muestra la versión actual, el canal de actualización y la configuración de actualización automática.
Canales de Lanzamiento
rdc update --channel edge # Actualizaciones de producción implementadas continuamente
rdc update --channel stable # Promovido desde edge después de 7 días de prueba (predeterminado)
rdc update --status # Mostrar canal actual e información de versión