Comandos Linux esenciales para deployments

Clase 4 de 22Curso de Despliegue de Aplicaciones Python en la Nube

Resumen

Domina la terminal de Linux para desplegar con confianza: aprende a moverte con cd, ls y pwd, conéctate por SSH, gestiona código con Git, valida endpoints con Curl, analiza DNS con Dig, rastrea rutas con traceroute y edita archivos con Vin sin salir de la consola. Todo orientado a servidores y producción.

¿Qué necesitas en la terminal para iniciar deployments?

Trabajarás siempre en terminal para conectarte a servidores y ajustar configuraciones. Sin ventanas gráficas, el foco está en productividad y precisión. Aquí se usan comandos de Linux y herramientas como SSH, Git, Curl, Dig, traceroute y el editor Vin.

¿Cómo moverte y ubicarte con cd, ls y pwd?

  • cd: entrar a una carpeta de proyecto, como la de Deployments Project.
  • ls: listar la app y el entorno virtual existentes.
  • pwd: confirmar la ruta actual en local o servidor.
cd Deployments\ Project
ls
pwd

Claves prácticas: - Verifica dónde estás antes de ejecutar cambios. - Revisa archivos del proyecto con ls. - Asegura que editas el entorno correcto.

¿Por qué instalar SSH y Git antes de desplegar?

  • SSH: conexión segura por Internet al servidor donde corre el código. Útil para reiniciar y volver a modificar servicios con la misma sesión.
ssh -h
  • Git: gestionar el repositorio, clonar y agregar cambios a proyectos. Hay enlaces en recursos para instalar dependencias.

Buenas prácticas: - Valida la ayuda de SSH con -h antes de conectarte. - Mantén el repositorio actualizado con cambios claros.

¿Cómo editar y guardar cambios con Vin en la terminal?

Vin permite editar archivos sin interfaz gráfica, similar a Visual Studio Code, pero en consola.

Flujo básico: - Abrir archivo. - Entrar a modo Insert para escribir. - Salir con escape y guardar con comandos.

vin nombre_del_archivo
# Presiona I para entrar a modo *Insert*
# Escribe, por ejemplo: Hello world
# Presiona Esc para salir de *Insert*
:w   # guardar (*write*)
:q   # salir (*quit*)

Búsqueda y navegación: - Buscar con "/" y palabra clave: por ejemplo, /headers. - Ir al siguiente resultado con n (next).

Salir sin guardar:

:q!

Verificar cambios desde la terminal:

cat wsgapp

Consejos clave: - Observa el indicador Insert en la parte inferior. - Usa :w y :q para controlar guardado y salida. - Si no quieres aplicar modificaciones: :q!.

¿Cómo validar endpoints con Curl y revisar caché?

Para probar en producción, Curl ejecuta un request a una URL y muestra el resultado en terminal. Permite ver contenido y analizar headers al instante, útil para confirmar si la caché está sirviendo una versión vieja o ya hay una nueva versión desplegada.

Comandos útiles:

curl https google.com
curl -i https google.com

Qué observar: - Contenido de respuesta. - Headers con -i para diagnosticar caché. - Cambios efectivos tras un despliegue.

Buenas prácticas: - Prueba endpoints clave tras cada release. - Revisa si la caché “juega en contra” al mostrar versiones previas.

¿Cómo diagnosticar DNS y red con Dig y traceroute?

Cuando hay balanceadores o múltiples IP en el camino, conviene inspeccionar DNS y la ruta de red para entender cómo llega el tráfico al servidor final.

¿Cómo ver registros DNS con Dig?

  • Dig muestra registros DNS de un dominio sin usar una web.
dig google.com

Qué verás: - Nombre del dominio e IP resultante. - Detalles de la consulta, como el servidor DNS usado, por ejemplo 1.1.1 de CloudFlare.

Aplicaciones: - Confirmar resolución correcta antes y después del deploy. - Diagnosticar cambios de IP o propagación.

¿Cómo rastrear la ruta con traceroute?

  • traceroute lista las IP que participan hasta llegar al servidor final, útil con balanceadores.
traceroute google.com

Qué interpretar: - Saltos intermedios en la red. - IP final estimada (ejemplo mencionado: 142.250.217...). - Variaciones de ruta por ubicación del servidor (como centros de datos en Estados Unidos).

Sugerencias operativas: - Usa traceroute cuando el servicio responde lento o intermitente. - Combina resultados de Dig y traceroute para un diagnóstico completo.

¿Listo para practicar? Crea varios archivos con Vin, modifícalos y guárdalos desde tu equipo local. Luego comparte lo que hiciste y los hallazgos en el sistema de comentarios.

      Comandos Linux esenciales para deployments