Despliega Nextcloud en Pethost con un clic
Sincronización de archivos, calendario y contactos en tu propio servidor
Qué pasa
- Inicias sesión en Pethost o creas una cuenta, con una passkey, GitHub o Google.
- ¿Aún no tienes máquina? Eliges un plan y te preparamos una. El enlace espera en tu navegador hasta que esté lista.
- Nuevo proyecto se abre en la app. Rellenas lo que pide y haces clic en Crear proyecto: Contraseña de administrador.
- 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.
- 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.
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: nextcloud:34-apache
restart: unless-stopped
depends_on:
db:
condition: service_healthy
redis:
condition: service_healthy
environment: &nextcloud_env
POSTGRES_HOST: db
POSTGRES_DB: nextcloud
POSTGRES_USER: nextcloud
POSTGRES_PASSWORD: ${DB_PASSWORD}
REDIS_HOST: redis
# The first start installs Nextcloud with this admin, so no setup page is left open.
NEXTCLOUD_ADMIN_USER: admin
NEXTCLOUD_ADMIN_PASSWORD: ${ADMIN_PASSWORD}
NEXTCLOUD_TRUSTED_DOMAINS: ${HOST}
OVERWRITEPROTOCOL: https
OVERWRITEHOST: ${HOST}
OVERWRITECLIURL: ${URL}
# The machine's proxy reaches the container from this range.
TRUSTED_PROXIES: 10.192.0.0/10
volumes:
- nextcloud:/var/www/html
# Runs Nextcloud's background jobs every five minutes.
cron:
image: nextcloud:34-apache
restart: unless-stopped
entrypoint: /cron.sh
depends_on:
db:
condition: service_healthy
redis:
condition: service_healthy
environment: *nextcloud_env
volumes:
- nextcloud:/var/www/html
db:
image: postgres:18-alpine
restart: unless-stopped
environment:
POSTGRES_DB: nextcloud
POSTGRES_USER: nextcloud
POSTGRES_PASSWORD: ${DB_PASSWORD}
volumes:
- db:/var/lib/postgresql
healthcheck:
test: ["CMD-SHELL", "pg_isready -h 127.0.0.1 -U nextcloud -d nextcloud"]
interval: 5s
timeout: 5s
retries: 12
start_period: 30s
redis:
image: redis:8-alpine
restart: unless-stopped
volumes:
- redis:/data
healthcheck:
test: ["CMD-SHELL", "redis-cli ping | grep -q PONG"]
interval: 5s
timeout: 3s
retries: 12
volumes:
nextcloud:
db:
redis: