Español
Empezar
← Todas las plantillas

Despliega Etherpad en Pethost con un clic

Documentos editados en equipo en tiempo real: cada autor con su propio color, con chat, historial y plugins

Qué pasa

  1. Inicias sesión en Pethost o creas una cuenta, con una passkey, GitHub o Google.
  2. ¿Aún no tienes máquina? Eliges un plan y te preparamos una. El enlace espera en tu navegador hasta que esté lista.
  3. Nuevo proyecto se abre en la app. Rellenas lo que pide y haces clic en Crear proyecto: Contraseña de administrador.
  4. En un par de minutos la app está en marcha en su propia dirección con HTTPS. Sus secretos se generan al azar para ella, y sus datos entran en el backup de cada noche.
  5. Es un proyecto como cualquier otro: su compose.yaml, su .env, sus logs y un terminal están en el panel, y tu agente puede cambiarlo, volver a una versión anterior o restaurarlo.

Primeros pasos

Abre la dirección, pon nombre a un pad y comparte su enlace. Cualquiera con la dirección puede crear y editar pads. Las páginas de administración están en https://etherpad.sam.pethost.app/admin: entra como admin con la contraseña de administrador que indicaste para instalar plugins y gestionar los pads.

Qué ejecuta

La plantilla es este compose.yaml y las variables que escribe en el .env del proyecto. Pethost ejecuta el archivo tal como está escrito.

services:
  etherpad:
    image: etherpad/etherpad:3.3.8
    restart: unless-stopped
    environment:
      NODE_ENV: production
      # The user admin signs in to /admin with this password.
      ADMIN_PASSWORD: ${ADMIN_PASSWORD}
      DB_TYPE: postgres
      DB_HOST: postgres
      DB_PORT: "5432"
      DB_NAME: etherpad
      DB_USER: etherpad
      DB_PASS: ${POSTGRES_PASSWORD}
      # Pethost's proxy terminates HTTPS, so the forwarded headers are trusted.
      TRUST_PROXY: "true"
    volumes:
      - plugins:/opt/etherpad-lite/src/plugin_packages
      - var:/opt/etherpad-lite/var
    depends_on:
      postgres:
        condition: service_healthy

  postgres:
    image: postgres:18-alpine
    restart: unless-stopped
    environment:
      POSTGRES_DB: etherpad
      POSTGRES_USER: etherpad
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
    volumes:
      - db:/var/lib/postgresql
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -h 127.0.0.1 -U etherpad -d etherpad"]
      interval: 5s
      timeout: 5s
      retries: 10
      start_period: 30s

volumes:
  plugins:
  var:
  db: