RemarkableCloud

Apps / Imágenes Docker

Ghost en Docker.
Anclada, endurecida, MySQL 8.

Ghost es una plataforma open source de publicación y newsletters usada por blogs, revistas y creadores independientes. Es un CMS moderno sobre Node.js, con un editor limpio, membresías y suscripciones de pago nativas, newsletters por correo y un API REST y de Admin completo.

docker pull ghcr.io/remarkablecloud/ghost

Build actual

6.63.0-r2

Updated Jan 1, 1970

Base

Ghost 6 (Alpine), anclada por digest

Qué trae

Configuración por variables, pareja MySQL 8, healthcheck a prueba de proxy, un volumen de contenido

Licencia upstream

Ghost: MIT

Free to pull and run anywhere. Digest-pinned, updated deliberately; each build is recorded in the changelog.

La imagen

Qué agrega nuestra imagen.

Ghost es una plataforma open source de publicación y newsletters usada por blogs, revistas y creadores independientes. Es un CMS moderno sobre Node.js, con un editor limpio, membresías y suscripciones de pago nativas, newsletters por correo y un API REST y de Admin completo.

Base anclada por digest

La imagen se construye desde `ghost:alpine@sha256:04a476...` (Ghost 6.63.0, Node 22, Alpine). Anclar por digest mantiene las reconstrucciones reproducibles: la base cambia solo cuando subimos el digest a propósito, nunca por accidente.

Healthcheck consciente del reverse proxy

Un `HEALTHCHECK` consulta el API del sitio admin de Ghost enviando `X-Forwarded-Proto: https`, así el chequeo recibe un 200 en vez de seguir la redirección de HTTP a HTTPS. Tu plataforma puede retener tráfico hasta que Ghost esté listo de verdad.

Configuración por variables de entorno

La `url` y cada ajuste `database__*` vienen de variables de entorno, así que una misma imagen corre sin cambios de una laptop a producción. Nada específico del entorno va horneado.

Tags inmutables y changelog publicado

Los tags siguen `<version>-r<build>` y nunca se mueven, y cada build queda registrado en el changelog que además alimenta las notificaciones de seguridad. El tag publicado actual es `ghcr.io/remarkablecloud/ghost:6.63.0-r2`.

¿Prefieres saltarte el compose? Despliega Ghost a un clic en tu propio VPS: TLS, dominio y base de datos ya conectados.

Despliega Ghost a un clic

La guía

Córrelo en producción.

Resumen de producción

Dos contenedores: Ghost (Node 22 sobre Alpine, HTTP interno detrás de tu proxy TLS) y MySQL 8, el único motor soportado en producción por Ghost 6. Toda la configuración entra por variables (url, database__*), así que la misma imagen corre igual en cualquier entorno. El estado se reparte entre MySQL (posts, miembros, ajustes) y el volumen /var/lib/ghost/content (temas, imágenes): respalda ambos juntos. Para actualizar, cambia al tag -rN nuevo y recrea; los tags nunca se mueven.

La guía técnica completa (Compose, variables, hardening, respaldos y upgrades) está disponible en inglés: ver la guía completa.

Actualizaciones

Builds recientes.

6.63.0-r2

Sep 10, 2026

First changelog entry. Covers the currently promoted build, `6.63.0-r2`; an earlier `6.63.0-r1` tag of the same upstream version exists and is superseded by this one. This build packages Ghost 6.63.

O sáltate la operación

Aloja Ghost en tu propio VPS privado.

Un clic instala esta imagen exacta en un VPS que es solo tuyo, con asistente de dominio y TLS incluido. El mismo servidor corre tantas apps como quepan, sin cargo por app.

FAQ

Preguntas que nos hacen.

¿Esta imagen incluye base de datos?

No. Ghost 6 requiere MySQL 8, que corre como contenedor aparte o servicio administrado. El compose independiente incluye un servicio MySQL 8 por conveniencia.

¿Puedo usar SQLite o MariaDB?

No para producción. Ghost 6 soporta solo MySQL 8. La imagen se configura para MySQL por las variables `database__*`.

¿Cómo funciona HTTPS si el contenedor solo sirve HTTP?

El TLS se termina en el reverse proxy (Traefik en la App Platform). Define `url` con tu dominio `https://` para que Ghost emita enlaces correctos, y el proxy reenvía `X-Forwarded-Proto: https`.

¿Por qué el healthcheck envía un header `X-Forwarded-Proto`?

Cuando `url` es HTTPS, Ghost redirige con 301 las peticiones HTTP planas. El header le dice a Ghost que la petición original ya era HTTPS, así la sonda interna recibe un 200 y la plataforma puede confiar en la señal de salud.

¿Dónde se guardan mis datos?

Posts, miembros y ajustes viven en MySQL. Temas, imágenes y subidas viven en el volumen de contenido en `/var/lib/ghost/content`. Respalda ambos juntos.

Your server runs. You sleep.

Fully managed hosting from people who have been doing this since 2001.