MacMD Viewer es un visor de Markdown para Mac de solo lectura: muestra los archivos .md con diagramas Mermaid, código resaltado y vista previa en el Finder con la barra espaciadora, y los exporta a PDF. Cuesta 19,99 dólares en un pago único. He probado todas sus funciones en mi Mac: es cómodo y cubre un abanico amplio de usos.
El error Plugin 'mysql_native_password' is not loaded aparece porque MySQL 8.4 desactiva ese método de autenticación y la 9.x lo elimina, y mysql:lts ya es la 9.7.4. Arranca la 8.4 con --mysql-native-password=ON, convierte cada cuenta con ALTER USER a caching_sha2_password y después pasa a la 9.7.
El error unknown storage type file aparece porque OpenBao 2.7 eliminó el backend file, y el servidor se detiene en cuanto lee esa configuración. Para el contenedor, copia el volumen, migra los datos a PebbleDB con bao operator migrate de la propia 2.7.2 y cambia el bloque storage: conservas las claves de desellado y el token.
NetBird 0.82 quitó el motor MySQL y el servidor se para con el error the MySQL store engine is no longer supported. Vuelve a la imagen 0.81.5, migra los datos a PostgreSQL con netbird-mysql-migrate de esa misma versión, porque la 0.82 ya no incluye la herramienta, y solo entonces actualiza fijando la etiqueta 0.82.0.
Vaultwarden 1.37.5 se para con Error loading config si tu .env pone a 0 un límite de peticiones o un tiempo de espera de la base de datos, o si un horario de purga no es un cron válido. Corrige cada variable que nombra el registro; los números fuera de rango no lo paran, pero se ignoran.
Al pasar de Grafana 12.4.12 a 13.2.3 en Docker, mis dos dashboards siguieron funcionando, pero un script que consultaba Prometheus por id numérico empezó a devolver 404. Grafana 13 desactiva por defecto las API de datasource por id, y la corrección es llamar por uid. Te dejo el procedimiento, con copia de grafana.db y vuelta atrás.
Podman 6 retiró cgroups v1, CNI, iptables, slirp4netns y BoltDB. Lo he probado con Podman 6.1.3 sobre estados creados con 4.9.4 y 5.8.7: BoltDB se migra solo, pero una red CNI desaparece sin aviso y un contenedor con slirp4netns no arranca. Incluyo un script de 38 líneas que detecta cada caso antes de actualizar.
Para actualizar Uptime Kuma 1.23 a la versión 2 con Docker, para el contenedor, archiva el directorio data y cambia la imagen a louislam/uptime-kuma:2.5.9, porque latest sigue apuntando a la 1.23.17. El primer arranque agrega el historial en tablas nuevas y borra los latidos brutos: no lo interrumpas y guarda la copia para volver atrás.
El error docker.io/bitnami/postgresql:16: not found aparece porque Bitnami retiró sus etiquetas por versión de Docker Hub y solo deja latest. Como parche, cambia a bitnamilegacy/postgresql. La salida definitiva es la imagen oficial postgres, apuntando PGDATA al directorio de Bitnami, creando postgresql.conf y pg_hba.conf y refrescando la versión de intercalación.
Valkey 9.1.2 usó 62,9 bytes por clave con 5 millones de claves de valor corto, frente a 70,9 de Valkey 9.0.6 y 81,5 de Redis 8.10.2. El ahorro desaparece con valores de 100 bytes o más. Y Valkey 9.1 no carga los ficheros RDB de Redis 7.4 ni de Redis 8.
Desde el 13 de mayo de 2026, el perfil tlsserver de Let's Encrypt emite certificados de 45 días. El perfil classic, el de por defecto, pasa a 64 días el 10 de febrero de 2027 y a 45 el 16 de febrero de 2028. Probé certbot, Caddy, Traefik, acme.sh y lego contra Pebble y los cinco permiten elegir el perfil.
El error No vector extension found aparece cuando Immich v3 arranca sobre la imagen antigua tensorchord/pgvecto-rs, porque la versión 3 ya no admite pgvecto.rs. Cambia la imagen de Postgres por ghcr.io/immich-app/postgres:14-vectorchord0.4.3-pgvectors0.2.0, deja que Immich migre a VectorChord y conservarás la búsqueda inteligente y las caras.
El 401 UNAUTHORIZED de quay.io/minio/minio no es un fallo de credenciales: MinIO dejó ese repositorio sin acceso público en septiembre de 2026 y falla con cualquier etiqueta. Cambia la imagen por cgr.dev/chainguard/minio o por pgsty/silo en Compose, Kubernetes o Helm; la copia AIStor de Quay sí se descarga, pero sin licencia rechaza todo.
Node.js 26 pasa a LTS activa el 28 de octubre de 2026 y Node 24 entra en mantenimiento el 20 de octubre. Para migrar una imagen Docker basta cambiar node:24-slim por node:26-slim, pero conviene revisar tres cosas: los módulos internos _stream_* eliminados, writeHeader() eliminado y los módulos nativos, que se recompilan para la ABI 147.
Traefik mostraba plugin integrity check failed porque su catálogo de plugins servía un zip distinto del que validaba. Le pasó a Badger v1.8.0 de Pangolin y a Sablier v1.3.1. Traefik lo corrigió el 30 de octubre de 2026: si fijaste el hash del zip, quita esa línea o pon el hash nuevo.
Authentik 2026.8 solo acepta X-Forwarded-Proto, X-Forwarded-Host y X-Forwarded-For si la conexión llega desde una red de AUTHENTIK_LISTEN__TRUSTED_PROXY_CIDRS. Si tu proxy inverso está fuera de los rangos privados por defecto, Authentik cree que la petición es HTTP y el login falla. Añade la IP o la red del proxy a esa variable y reinicia.
Grafana Tempo 3.1 guarda trazas distribuidas y las consulta con TraceQL. En Docker Compose basta un contenedor en modo monolítico, sin Kafka, con Alloy como recolector OpenTelemetry y Grafana para explorarlas. Desde la 3.1 escribe bloques vParquet5 y admite aritmética en TraceQL metrics; si vienes de la 2.x, hay que migrar la configuración.
El error UPGRADE PROBLEM: Found an invalid featureCompatibilityVersion document aparece porque mongo:latest apunta a MongoDB 9.0 desde el 1 de octubre de 2026, y la 9.0 solo abre datos en FCV 8.0 u 8.3. Vuelve a tu imagen anterior, sube a mongo:8.3, fija la FCV en 8.3 y entonces pasa a la 9.0.
El error r.map is not a function del panel de Jellyfin 12 aparece cuando /web/ConfigurationPages devuelve HTML o un cuerpo vacío en lugar de JSON, y la interfaz guarda esa respuesta en IndexedDB durante 24 horas. Corrige el proxy y después borra la clave jellyfin-query-cache y la caché del navegador.
La imagen gitea/act_runner lleva congelada en la v0.6.1 desde el 30 de abril de 2026; el runner vive ahora en gitea/runner y va por la 5.2.4. El salto reutiliza tu registro, pero cambia tres cosas que rompen trabajos: ${VAR} en config.yaml, el comodín de valid_volumes y los jobs sin runs-on.
El error unexpected argument '--frozen-lockfile' found sale porque npm install -g pnpm ya instala pnpm 12, reescrito en Rust, y su CLI no acepta un valor separado por espacio. Cambia --frozen-lockfile false por --no-frozen-lockfile y fija la versión de pnpm en tu Dockerfile y en packageManager para que la siguiente versión no te sorprenda.
npm 11.19 trae dos defensas contra paquetes comprometidos: allowScripts, que exige aprobar los scripts de instalación de cada dependencia, y min-release-age, que ignora las versiones publicadas hace menos de N días. Activadas juntas habrían frenado el gusano ChainDrop de agosto de 2026, que se propagaba con un preinstall y versiones de parche nuevas.
Desde Caddy 2.11.6, las cabeceras de una petición tienen un límite de 16 KiB y lo que pasa de ahí recibe 431 Request Header Fields Too Large. Súbelo con max_header_size en el bloque servers. La misma versión descarta en silencio las cabeceras con punto, corta las subidas paradas a los 60 s y deja de heredar client_auth del comodín.
Nginx Proxy Manager 2.16.0 se actualiza cambiando la etiqueta de la imagen y recreando el contenedor. No trae migraciones de base de datos y en mi prueba conservó hosts, certificados y listas de acceso. Copia antes data y letsencrypt: volver a 2.15 cambiando solo la imagen deja sin protección las rutas que protejas con la función nueva.
Gitea 28 muestra You cannot import from disallowed hosts cuando migras o haces mirror desde una IP privada, como otro contenedor de tu red Docker. Un nombre de host ya no basta: añade a [migrations] ALLOWED_HOST_LIST la IP o la subred del origen con su puerto, por ejemplo 172.31.105.0/24:3000, y la migración funciona.
Promtail dejó de tener soporte el 2 de marzo de 2026 y su sustituto es Grafana Alloy. El comando alloy convert traduce la configuración y hereda el fichero de posiciones, pero cambia multiline sin avisar y relee el historial de los contenedores Docker. Aquí lo migro y compruebo con LogQL que no se pierde ni se duplica ninguna línea.
Docker Desktop 4.94, del 5 de octubre de 2026, usa el driver de logs local para los contenedores Linux nuevos: rota y comprime sin configurar nada. En mi prueba, 3 millones de líneas ocuparon 454,5 MB con json-file y 15,5 MB con local. Docker Engine en Linux sigue con json-file, así que en un servidor tienes que cambiarlo tú.
El error pull access denied for minio/mc aparece porque MinIO borró esa imagen de Docker Hub en septiembre de 2026, y tumba el compose entero aunque solo la use el contenedor que crea los buckets. Cámbiala por pgsty/silo, por la imagen de Chainguard o por aws-cli, o quita el servicio si tus buckets ya existen.
El error Error loading configuration file: /config/config/encoding.xml de Jellyfin 12.0 y 12.1 lo provoca la línea EncoderPreset xsi:nil que la 10.11 escribe por defecto. El servidor arranca, pero vuelve a la transcodificación por defecto y pierde QSV. Pasa a la 12.2 antes de migrar o cambia esa línea por auto.
Para actualizar Nextcloud 34 a 35 en Docker, haz copia de la base de datos y del volumen, cambia la imagen a nextcloud:35 y deja que el arranque ejecute occ upgrade. Solo se sube una versión mayor cada vez. Lo que falla son las apps sin versión para la 35, y volver a la 34 exige restaurar la copia.
Vaultwarden 1.37.3 acepta inicio de sesión único por OpenID Connect con SSO_ENABLED, SSO_AUTHORITY y un cliente creado en tu proveedor. Con Pocket ID entras con una passkey, pero la contraseña maestra sigue siendo obligatoria porque es la que cifra la bóveda. SSO_SIGNUPS_ALLOWED decide si el SSO puede crear cuentas nuevas.
WSL containers es la función de WSL 3.0.1 que trae wslc.exe, una interfaz de línea de comandos con sintaxis de Docker para construir y ejecutar contenedores Linux en Windows sin instalar otro motor. Es estable desde el 29 de septiembre de 2026, pero aún no lee compose.yaml, así que Docker Desktop sigue siendo necesario para proyectos con Compose.
Construí la misma app en Go y en Python sobre Wolfi, Alpine, distroless y Debian slim. En Go, chainguard/static y distroless/static dejan 3,1 y 3,3 MB comprimidos sin CVE. En Python, Alpine da la imagen más pequeña (24,2 MB) si todas tus dependencias tienen rueda musl; Debian slim pesa el doble y Trivy le cuenta 204 avisos.
OpenObserve 1.0 es un único binario que guarda logs, métricas y trazas y trae SLO con alertas de burn rate en la edición AGPL. Con Docker Compose, Vector y la imagen v1.0.4 lo tuve ingiriendo logs de nginx en minutos; el SLO y su alerta funcionaron tras cuatro dificultades con las que me he topado y que explico aquí.
Las Crafting Apps de ArtCraft son doce aplicaciones creativas de código abierto escritas en Rust, con licencia MIT o Apache 2.0, que se manejan también por CLI y por MCP. Las probé el 13 de octubre de 2026 en Linux arm64: PhotoCraft 0.8.2 y PdfCraft 0.7.1 funcionan por terminal, por MCP y en el navegador, pero siguen en alfa temprana.
Stirling-PDF 3.0.0 se actualiza en Docker cambiando la etiqueta de la imagen: usuarios, ajustes, claves de API y carpetas vigiladas sobreviven. Pero la 3.0 añade un contador de 1000 PDF al mes para la API y las automatizaciones, que al agotarse devuelve un error 402, y pide un volumen nuevo para /storage.
Para actualizar Gitea 1.27 a Gitea 28 con Docker, para el contenedor, vuelca PostgreSQL y el volumen /data, borra de app.ini las claves heredadas de egress y cambia la etiqueta. En mi prueba, una entrada BLOCKED_DOMAINS con comodín válida en 1.27 impidió arrancar la 28, y los webhooks a hosts públicos volvieron a salir.
Gatus es un monitor de disponibilidad que se configura con ficheros YAML en lugar de una interfaz web. Con Docker Compose, la imagen v5.37.0 y un volumen para SQLite, vigila HTTP, TCP, certificados y registros DNS TXT, y avisa por webhook. En mi prueba avisó de la caída de nginx a los 30 segundos, lo que marcan tres checks de 10 segundos.
El error pull access denied for minio/minio aparece porque MinIO retiró sus imágenes de Docker Hub en septiembre de 2026, y quay.io exige cuenta desde el día 24. Cambia la imagen de tu compose por cgr.dev/chainguard/minio, por el fork pgsty/silo o por una compilada desde el código: tus datos siguen sirviendo.
Open WebUI 0.11.4 se instala con un docker-compose.yml de dos servicios: Ollama para ejecutar los modelos y la imagen slim de Open WebUI, que en arm64 descarga 176 MB frente a 1,49 GB de la completa. Esta guía crea la cuenta de administrador, conversa con un modelo local y activa la aprobación de herramientas.
Para migrar de MinIO a RustFS 1.0 con Docker, levanta RustFS junto a MinIO, importa los usuarios con mc admin cluster iam, copia los buckets con rclone sync --metadata y compáralos con rclone check --download. En mi prueba llegaron idénticos 4012 objetos; versiones, etiquetas y accesos públicos hubo que rehacerlos a mano.
Una cola quorum de RabbitMQ borra cada mensaje al confirmarlo y hace fsync antes de aceptarlo; un stream lo guarda para releerlo. En RabbitMQ 4.3.6, con mensajes de 1 KB, la cola quorum movió 45 156 msg/s y el stream, por su protocolo, 281 330 msg/s, con 9 KB de memoria por millón de mensajes frente a 20,5 MB.
Docker Compose 5.3.0, publicado el 2 de julio de 2026, añade init containers con la clave pre_start: pasos que se ejecutan en contenedores efímeros, en orden, antes de arrancar el servicio. Sirven para migraciones, permisos de volúmenes y configuración generada. Compose 2.40.3 rechaza el fichero entero, y cada paso debe ser idempotente porque se repite.
File Browser quedó archivado el 31 de agosto de 2026 y su v2.63.23 arrastra al menos 8 vulnerabilidades publicadas que ya no tendrán parche. Tras probar las alternativas en Docker sobre la misma carpeta, FileBrowser Quantum es el sustituto directo, copyparty la opción ligera para compartir ficheros grandes y Filestash la adecuada si tus datos están en S3, SFTP o SMB.
CrowdSec 1.8 añade a su WAF una detección de bots, todavía en alfa, que sirve a cada visitante una página con prueba de trabajo y huella del navegador. Se activa con la colección appsec-bot-challenge y sus configuraciones en la adquisición AppSec, siempre detrás de un bouncer compatible como el de OpenResty 1.2.3.
Docker Compose 5.5 cambia el digest con el que decide si la imagen de un contenedor ha cambiado. Con el almacén de imágenes de containerd, los contenedores que Compose 2.40 o un up de 5.4 con descarga etiquetaron con el digest del índice se recrean una vez en el primer up, sin cambios reales. up --dry-run los señala antes.
n8n 3.0 aún no ha salido: n8n la prevé para octubre de 2026 y la versión estable es la 2.39.6. Para preparar tu instalación con Docker, abre Settings > Migration Report, sustituye los nodos retirados, fija los valores por defecto que cambian, pasa binaryData a storage y prueba la imagen v3-nightly sobre una copia.
Open Storage for Proxmox es un plugin de almacenamiento GPL-3.0 que se instala en cada nodo de Proxmox VE. Crea en TrueNAS 25.10 un zvol por disco, lo publica por iSCSI o NVMe/TCP a través de la API, sin SSH, y añade snapshots y clones de ZFS. Va por la versión 2.1.23~beta3.
19 min205,0
Usamos cookies propias y de terceros para analizar el tráfico del sitio. Puedes aceptarlas, rechazarlas o configurar tu elección.
Más información sobre las cookies
Preferencias de cookies
NecesariasImprescindibles para el funcionamiento del sitio. Siempre activas.
AnalíticasNos ayudan a entender cómo se usa el sitio (Google Analytics).