Español
Empezar
← Todas las plantillas

Despliega listmonk en Pethost con un clic

Un administrador de newsletters y listas de correo

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

Inicia sesión como admin con la contraseña que indicaste. Luego pon https://listmonk.sam.pethost.app en Settings > General > Root URL y agrega tu servidor SMTP en Settings > SMTP.

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:
  app:
    image: listmonk/listmonk:v6.2.0
    restart: unless-stopped
    command: [sh, -c, "./listmonk --install --idempotent --yes --config '' && ./listmonk --upgrade --yes --config '' && ./listmonk --config ''"]
    environment:
      LISTMONK_app__address: "0.0.0.0:9000"
      LISTMONK_db__host: db
      LISTMONK_db__port: 5432
      LISTMONK_db__user: listmonk
      LISTMONK_db__password: ${DB_PASSWORD}
      LISTMONK_db__database: listmonk
      LISTMONK_db__ssl_mode: disable
      LISTMONK_db__max_open: 25
      LISTMONK_db__max_idle: 25
      LISTMONK_db__max_lifetime: 300s
      # The install makes this Super Admin, so no setup page is left open.
      LISTMONK_ADMIN_USER: admin
      LISTMONK_ADMIN_PASSWORD: ${ADMIN_PASSWORD}
      TZ: Etc/UTC
    depends_on:
      db:
        condition: service_healthy
    volumes:
      - uploads:/listmonk/uploads

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

volumes:
  uploads:
  db: