5. Descarga código fuente

 

Tutorial 5: Descarga del Código Fuente

Duración estimada: 15 minutos


5.1 Introducción

¡Comienza la aventura! En este tutorial vamos a obtener el código fuente del proyecto, que será la base de todo nuestro trabajo durante el curso. Aprenderás a clonar o descargar los repositorios necesarios y a entender su estructura.


5.2 Acceso a los Repositorios

📦 ¿Dónde encontrar el código?

El código fuente está disponible en el repositorio de GitHub del instructor. Puedes acceder directamente desde el enlace proporcionado en el video de la clase.

🗂️ Los dos repositorios principales:

RepositorioPropósitoUso
Proyecto de DesarrolloAmbiente de desarrollo localContiene toda la configuración para trabajar en tu máquina
Proyecto de ProducciónDespliegue en la nubeConfigurado para CI/CD con AWS

💡 Nota importante: En este tutorial nos enfocaremos en el proyecto de desarrollo, que es donde trabajaremos durante todo el curso.


5.3 Descarga del Código Fuente

Opción 1: Clonar con Git (Recomendado)

bash
# Navega a la carpeta donde quieras guardar el proyecto
cd ~/Documentos/  # o la ruta que prefieras

# Clona el repositorio de desarrollo
git clone https://github.com/tu-usuario/proyecto-desarrollo.git

# Entra a la carpeta del proyecto
cd proyecto-desarrollo

Opción 2: Descargar como ZIP

  1. Visita el repositorio en GitHub

  2. Haz clic en el botón verde "Code"

  3. Selecciona "Download ZIP"

  4. Extrae el archivo en la carpeta de tu proyecto

https://imagen_referencia.png


5.4 Estructura del Proyecto

📁 Organización de Carpetas

Una vez que tengas el proyecto descargado, verás una estructura similar a esta:

text
proyecto-desarrollo/
├── .docker/                 # Configuración de Docker
│   ├── nginx/
│   │   └── default.conf    # Configuración del servidor web
│   └── php/
│       └── Dockerfile      # Configuración de PHP
├── app/                    # Código principal de Laravel
│   ├── Http/
│   │   ├── Controllers/
│   │   ├── Middleware/
│   │   └── Kernel.php
│   └── Models/
├── database/               # Migraciones y seeders
│   ├── migrations/
│   └── seeders/
├── docker-compose.yml      # Orquestación de contenedores
├── resources/              # Vistas y assets
│   ├── js/                # Componentes React
│   │   ├── Pages/
│   │   ├── Components/
│   │   └── app.jsx
│   └── views/
├── routes/                 # Definición de rutas
│   ├── web.php
│   └── api.php
└── .env.example           # Variables de entorno de ejemplo

5.5 ¿Qué contiene el proyecto?

🐳 Docker y Orquestación

El proyecto viene con Docker configurado, lo que nos permite tener un entorno de desarrollo consistente:

yaml
# docker-compose.yml (ejemplo simplificado)
services:
  app:
    build:
      context: .
      dockerfile: .docker/php/Dockerfile
    container_name: laravel_app
    volumes:
      - ./:/var/www/html
    depends_on:
      - postgres
      - localstack
  
  postgres:
    image: postgres:15
    container_name: laravel_db
    environment:
      POSTGRES_DB: laravel
      POSTGRES_USER: laravel
      POSTGRES_PASSWORD: secret
  
  localstack:
    image: localstack/localstack
    container_name: localstack
    environment:
      - SERVICES=s3
      - AWS_DEFAULT_REGION=us-east-1

🔧 Componentes incluidos:

  • PHP 8.1 con todas las extensiones necesarias

  • Nginx como servidor web

  • PostgreSQL como base de datos

  • LocalStack para emular servicios AWS (S3)

  • Node.js y NPM para el frontend


5.6 Diferencias entre los repositorios

🔹 Proyecto de Desarrollo vs Producción

CaracterísticaDesarrolloProducción
LocalStack✅ Incluido❌ No incluido
PostgreSQL✅ Incluido❌ Usa servicio externo
Variables de entorno.env.localConfigurado en GitHub Secrets
Pipeline CI/CD❌ No✅ GitHub Actions
OptimizaciónModo debugModo producción

5.7 Verificación de la Descarga

✅ Checklist de verificación:

  • ¿Tienes el proyecto en tu computadora?

  • ¿Puedes ver la estructura de carpetas?

  • ¿Tienes el archivo docker-compose.yml?

  • ¿Encontraste el archivo .env.example?

  • ¿Tienes acceso a la carpeta resources/js?

📝 Comando para verificar:

bash
# Lista el contenido de la carpeta
ls -la

# Deberías ver algo como:
# -rw-r--r--  docker-compose.yml
# drwxr-xr-x  app/
# drwxr-xr-x  resources/
# drwxr-xr-x  routes/
# -rw-r--r--  .env.example

5.8 Preparación para el Siguiente Paso

🚀 Lo que viene:

Ahora que tenemos el código fuente, en el próximo tutorial:

  1. Configuraremos las variables de entorno

  2. Levantaremos los contenedores Docker

  3. Instalaremos las dependencias

  4. Ejecutaremos la aplicación por primera vez

📋 Tareas pendientes:

  • Descargar/Clonar el repositorio de desarrollo

  • Explorar la estructura del proyecto

  • Familiarizarte con los archivos de configuración

  • Asegurarte de tener Docker instalado


5.9 Solución de Problemas Comunes

❌ Error: "No puedo clonar el repositorio"

bash
# Solución: Usa HTTPS en lugar de SSH
git clone https://github.com/usuario/repo.git

# O descarga el ZIP directamente desde GitHub

❌ Error: "No tengo Docker instalado"

Visita docker.com y descarga Docker Desktop para tu sistema operativo.

❌ Error: "No encuentro la carpeta del proyecto"

bash
# Busca el proyecto en tu sistema
find / -name "proyecto-desarrollo" 2>/dev/null

# En Windows (PowerShell)
Get-ChildItem -Path C:\ -Filter "proyecto-desarrollo" -Recurse

📝 Ejercicio de la Clase

Para verificar tu progreso:

  1. Descarga o clona el repositorio de desarrollo

  2. Explora la estructura de carpetas

  3. Identifica los archivos clave del proyecto

  4. Abre el docker-compose.yml y revisa los servicios

  5. Verifica que el archivo .env.example está presente


📚 Recursos Adicionales


¡Excelente! Ya tienes el código fuente. Continúa al Tutorial 6: Configuración del Entorno de Desarrollo con Docker

Comentarios