# Dockerfile para compilar proyectos Wails en CI/CD # Soporta Linux AMD64 y Windows AMD64 (cross-compile) # # Uso: # docker build -t wails-builder -f Dockerfile.wails-builder . # docker run -v $(pwd):/app wails-builder make build-all FROM golang:1.22-bookworm # Evitar prompts interactivos ENV DEBIAN_FRONTEND=noninteractive # Instalar dependencias de sistema RUN apt-get update && apt-get install -y --no-install-recommends \ # Wails/Linux dependencies libgtk-3-dev \ libwebkit2gtk-4.0-dev \ # Windows cross-compile gcc-mingw-w64-x86-64 \ # NSIS para instaladores Windows nsis \ # Node.js nodejs \ npm \ # Utilidades git \ ca-certificates \ && rm -rf /var/lib/apt/lists/* # Instalar pnpm RUN npm install -g pnpm # Instalar Wails RUN go install github.com/wailsapp/wails/v2/cmd/wails@latest # Instalar UPX para compresión (opcional) RUN apt-get update && apt-get install -y --no-install-recommends upx \ && rm -rf /var/lib/apt/lists/* # Variables de entorno para cross-compile ENV PATH="/go/bin:${PATH}" ENV CGO_ENABLED=1 WORKDIR /app # Entry point por defecto CMD ["make", "build-all"]