====== miniserve ====== Herramienta en línea de comandos para servir ficheros y directorios por HTTP de forma simple y rápida. * [[https://github.com/svenstaro/miniserve|Repositorio de código]] {{ https://raw.githubusercontent.com/svenstaro/miniserve/master/screenshot.png |}} ===== Características ===== * Fácil de usar * Solo un fichero sin dependencias. * Soporte de autenticación * Muy rápido * Descarga de directorios (posibilidad de comprimir al vuelo en ''.tar.gz'' o ''.zip'') * Subida de ficheros * Creación de directorios * Temas de colores * Generación de códigos QR * TLS * Soporta la generación de ficheros ''README.md'' como GitHub. ===== Instalación ===== Todo está contenido en un único ficehro binario / ejecutable, así que basta con descargarlo y ejecutarlo con las opciones que queramos ==== Docker ==== Ejemplo de fichero ''docker-compose.yml'' para usar con Docker Compose: services: miniserve: image: docker.io/svenstaro/miniserve container_name: miniserve environment: MINISERVE_TITLE: compartir MINISERVE_COLOR_SCHEME: archlinux MINISERVE_PORT: 8080 MINISERVE_DIRS_FIRST: true MINISERVE_HIDE_VERSION_FOOTER: true ports: - "8889:8080" volumes: - "./data:/data" command: " /data" restart: unless-stopped Al crear el contenedor con el [[informatica:sistemas_operativos:virtualizacion:docker:docker_compose|Compose]] anterior, compartiremos el contenido del directorio ''data'' del host a través de la red por el puerto 8889 del host. ===== Uso ===== ==== Compartir con usuario y contraseña ==== miniserve --auth pepito:123 directorio-protegido/ Si usamos Docker, la variable de entorno correspondiente es ''MINISERVE_AUTH''. Por ejemplo: MINISERVE_AUTH: "pepito:123" ==== Mostrar comando wget para descargar recursivamente ==== miniserve --show-wget-footer directorio-a-compartir/ Se mostrará el comando ''wget'' necesario para descargar el directorio actual de forma recursiva. Si usamos Docker, la variable de entorno correspondiente es ''MINISERVE_SHOW_WGET_FOOTER'' ==== Subida de archivos ==== Es posible subir ficheros a una instancia de **miniserve** mediante: miniserve --upload-files /directorio/subidas Si usamos Docker, la variable de entorno correspondiente es ''MINISERVE_ALLOWED_UPLOAD_DIR''