Pon tu dominio con HTTPS a tu VPS NocoDB, entra por primera vez, deja la cuenta admin@nocodb.local, crea tu primera base e invita a tu equipo.
Tu VPS NocoDB llega con NocoDB 2026.09.0 instalado y en marcha. El primer arranque ya creó una cuenta de administrador provisional y cerró la puerta a que cualquiera se diera de alta por su cuenta. Lo primero es darle tu dominio con un certificado HTTPS de Let's Encrypt, gratuito y que se renueva solo: así entras siempre por una dirección tuya, el navegador no muestra ningún aviso y los enlaces que genera NocoDB llevan tu dominio. Después haces tuya la cuenta de administrador, creas tu primera base e invitas a quien la vaya a usar contigo. La interfaz de NocoDB está en inglés; si prefieres otro idioma, el menú de tu cuenta incluye un selector Language, pero este manual describe lo que vas a ver la primera vez, en inglés.
Antes de empezar
- Un dominio tuyo. En este manual usamos
nocodb.tudominio.es: un nombre dentro de tu dominio, que no afecta a tu web ni a tu correo. Si todavía no tienes dominio, compra tu dominio en unos minutos (Cómo registrar un dominio en Netebu); con el hosting en Netebu, además, creas el registro DNS desde tu propio panel. - La IP de tu VPS y el acceso root están en Cómo entrar al panel de tu VPS desde el área de cliente. En los comandos, sustituye
IP_DEL_VPSynocodb.tudominio.espor los tuyos; no escribas literalmente esos marcadores. - Una terminal con SSH en tu ordenador. Comprueba la huella del servidor por un canal de confianza antes de aceptar la primera conexión. Si no tienes la contraseña root, restablécela desde el área de cliente (Cómo restablecer la contraseña root y cambiar el nombre de tu VPS).
- Este VPS es autogestionado: mantener NocoDB, Docker y el sistema operativo al día es responsabilidad tuya.
- Para copias y clave SSH, consulta Copias de seguridad, instantáneas y clave SSH en tu VPS. No reinstales para resolver un error: una reinstalación borra el disco.
Paso a paso
- Crea un registro A con el nombre
nocodby la IP de tu VPS. Dónde, depende de tu dominio:
- Tu dominio tiene hosting en Netebu. Entra en el panel Plesk desde tu área de cliente, abre Sitios web y dominios → tu dominio → pestaña Hosting y DNS y pulsa DNS.
En Configuración DNS pulsa Añadir registro.
Elige tipo de registro A, escribe nocodb en Nombre de dominio, deja el TTL en blanco, pon la IP de tu VPS en Dirección IP y pulsa Aceptar.
Plesk vuelve a la lista con un aviso amarillo: el registro está marcado, pero todavía no está en la zona. Pulsa Actualizar para aplicarlo.
El registro nuevo aparece en la lista con su tipo A y la IP de tu VPS.
- Tu dominio tiene el DNS en otro proveedor. Crea el mismo registro en su panel: nombre
nocodb, tipoA, valor la IP de tu VPS. Si no sabes dónde está tu zona DNS, mira Cómo cambiar los servidores DNS de tu dominio; para los detalles del formulario de Plesk, Cómo crear un registro DNS (A, CNAME, MX o TXT).
- Comprueba desde tu ordenador que el nombre ya resuelve a tu VPS:
dig +short nocodb.tudominio.es
Tiene que devolver la IP de tu servidor. Si devuelve otra cosa o nada, espera unos minutos y repite: Let's Encrypt comprueba el nombre desde Internet y sin esto no emite el certificado.
- Entra por SSH como root, lee la clave de configuración que dejó el primer arranque e instala Certbot:
ssh root@IP_DEL_VPS
cat /root/nocodb-setup-key.txt
apt-get update
apt-get install -y certbot
Del fichero apunta el usuario admin@nocodb.local y la contraseña. Son de un solo uso: en cuanto cambies la contraseña en el paso 8, este fichero deja de estar al día y ya no sirve para entrar.
- Pide el certificado. En este servidor los puertos 80 y 443 los atiende el proxy de NocoDB, así que Certbot lo para un momento, valida el nombre, copia el certificado a la carpeta del proxy y lo vuelve a arrancar. Copia el comando entero, con tu nombre en
-d:
certbot certonly --standalone -d nocodb.tudominio.es \
--pre-hook "docker compose -f /opt/nocodb/docker-compose.yml stop proxy" \
--deploy-hook 'cp -L "$RENEWED_LINEAGE/fullchain.pem" "$RENEWED_LINEAGE/privkey.pem" /opt/nocodb/tls/' \
--post-hook "docker compose -f /opt/nocodb/docker-compose.yml start proxy"
Certbot te pregunta un correo para los avisos de caducidad, te pide aceptar las condiciones de Let's Encrypt y te ofrece compartir el correo con la EFF (puedes contestar que no). Durante la petición verás «Hook 'pre-hook' ran with error output» y «Hook 'post-hook' ran with error output» seguidos de líneas Container nocodb-proxy-1 Stopped y Started: no es un error, es Docker contando lo que hace. Al terminar dice «Successfully received certificate» y «Certbot has set up a scheduled task to automatically renew this certificate in the background». El certificado dura 90 días y se renueva solo; en cada renovación Certbot repite los mismos tres pasos, con un corte de unos segundos.
- Dile a NocoDB su dirección nueva, para que los enlaces que genera (invitaciones, restablecer contraseña) lleven tu dominio, y reinícialo:
sed -i 's#^NC_SITE_URL=.*#NC_SITE_URL=https://nocodb.tudominio.es#' /opt/nocodb/.env
docker compose -f /opt/nocodb/docker-compose.yml up -d --force-recreate nocodb worker
Espera alrededor de un minuto a que NocoDB vuelva a arrancar.
- Abre
https://nocodb.tudominio.esen el navegador: carga con el candado y sin ningún aviso. Entra conadmin@nocodb.localy la contraseña del fichero, en la pantalla Sign In de NocoDB: campos E-mail y Password, botón Sign In y un enlace Forgot your password ?.
- La primera vez que entras, NocoDB te pregunta «Hey! What do you plan on using NocoDB for?» con cuatro opciones y un enlace Skip abajo. Pulsa Skip: no hace falta responder para seguir.
Llegas entonces a tu Default Workspace, marcado como Free Plan (la edición gratuita autoalojada, no una prueba con caducidad), sin ninguna base todavía («Bases (0)») y con un botón New Base. Es la cuenta que creó el propio primer arranque antes de que nadie pudiera registrarse, así que admin@nocodb.local es la única que existe en este momento.
- Cambia la contraseña de esa cuenta antes de hacer nada más: en el menú de tu cuenta ve a Account Settings → Reset Password, y rellena el formulario Change Password (Current password, New password, Confirm new password).
Mientras conserve la contraseña de fábrica, cualquiera que haya visto el fichero del paso 3 tiene el mismo control que tú sobre el servidor.
- Cambia también el correo de acceso. Esto no se puede hacer desde la web: el campo de correo de tu perfil aparece bloqueado, así que hace falta un cambio por SSH, como root, en la misma sesión del paso 3:
cd /opt/nocodb
echo 'NC_ADMIN_EMAIL=tu@tudominio.es' >> .env
echo 'NC_ADMIN_PASSWORD=tu-contrasena-actual' >> .env
docker compose up -d --force-recreate nocodb worker
Usa en NC_ADMIN_PASSWORD la contraseña que tengas puesta en ese momento, es decir, la que acabas de fijar en el paso 8: si pones otra distinta, este mismo paso te la cambiaría sin querer a la vez que el correo. Espera alrededor de un minuto y entra de nuevo en https://nocodb.tudominio.es ya con tu correo nuevo; admin@nocodb.local deja de funcionar.
Después, borra esas dos líneas del fichero, no las dejes ahí:
sed -i '/^NC_ADMIN_EMAIL=/d;/^NC_ADMIN_PASSWORD=/d' .env
docker compose up -d --force-recreate nocodb worker
NocoDB vuelve a comprobar esas dos variables cada vez que el servicio arranca y, si la contraseña que llevan no coincide con la que tiene guardada, la reemplaza por esa. Si las dejaras puestas, cualquier reinicio del contenedor (incluido uno de mantenimiento del propio Docker, no solo un reinicio de todo el VPS) te devolvería sin avisar la contraseña que escribiste en ese fichero, deshaciendo cualquier cambio que hicieras después desde la web.
- Crea tu primera base desde el panel principal: pulsa New Base, ponle un título en Create Base y añade tu primera tabla con Create New Table.
- Invita a quien vaya a trabajar contigo: en el espacio de trabajo, ve a Invite Members → Add Members, escribe su correo y elige su papel (Owner, Creator, Editor, Commenter, Viewer, No Access o Inherit; por defecto sale No Access, así que cambia el selector antes de invitar) y pulsa Invite to Workspace.
Este servidor no tiene correo saliente configurado: NocoDB dice «Invitation sent successfully», pero ese correo nunca sale, y la persona invitada existe sin contraseña (si intenta darse de alta por su cuenta, NocoDB le dice que el usuario ya existe). Para dársela, entra en el Admin Panel (menú de tu cuenta) → User Management, pulsa el menú ⋯ de esa persona y elige Copy password reset URL; comparte ese enlace con ella por un canal privado tuyo, no por NocoDB. El mismo menú tiene también Copy Invite URL y Resend Invite E-mail, por si prefieres alguna de esas dos vías. El alta pública sigue cerrada en cualquier caso: nadie entra en tu NocoDB si no le has dado tú uno de estos enlaces.
Cómo comprobar que ha funcionado
https://nocodb.tudominio.es abre NocoDB con el candado del navegador y sin aviso, y http://nocodb.tudominio.es redirige solo a la versión segura. Cierra sesión y vuelve a entrar: NocoDB te deja pasar con tu correo y tu contraseña nuevos, y ya no acepta admin@nocodb.local ni la contraseña de fábrica. Un reinicio del servidor, o de los contenedores de NocoDB, no te devuelve la contraseña antigua, siempre que hayas hecho el paso 9 completo, incluido borrar las dos líneas del .env. Si alguien intenta darse de alta como si fuera otra persona desde la pantalla de acceso, NocoDB lo rechaza: es la prueba de que las cuentas nuevas solo entran por invitación tuya. El fichero /root/nocodb-setup-key.txt no se actualiza solo; después de este paso, guarda tu contraseña en tu propio gestor y no dependas más de él.
Para comprobar que la renovación automática funcionará, ejecuta certbot renew --dry-run por SSH: tiene que terminar con «Congratulations, all simulated renewals succeeded». Hace el mismo corte de unos segundos que una renovación real.
Si algo falla
- Justo después de encender el VPS el navegador no conecta o tarda mucho: el primer arranque todavía está instalando Docker y descargando las imágenes de NocoDB. Espera unos minutos y recarga; no reinicies el servidor mientras tanto.
- Certbot falla con «DNS problem: NXDOMAIN» o «Timeout during connect»: el registro A no ha propagado todavía o apunta a otra IP. Repite el paso 2 hasta que devuelva la IP de tu VPS y lanza el paso 4 otra vez; el proxy vuelve a arrancar aunque Certbot falle.
- El aviso amarillo de Plesk sigue ahí o el registro no aparece en la lista: pulsaste Aceptar pero no Actualizar. Vuelve a DNS y pulsa Actualizar.
- Entras por la IP en lugar de por el nombre: el navegador avisa de que la conexión no es privada, porque el certificado es para
nocodb.tudominio.es. Entra siempre por tu dominio. - Escribiste
http://en vez dehttps://: el servidor redirige solo a https. - Olvidaste la contraseña nueva: la pantalla de acceso tiene un enlace Forgot your password ?, pero este servidor no tiene correo saliente configurado (lo comprobamos con las invitaciones del paso 11), así que no te va a llegar nada por ahí. Abre un ticket desde tu área de cliente (Cómo abrir un ticket de soporte y que se resuelva a la primera).
- La invitación que mandaste no llega por correo: es lo esperado, el servidor no manda correo saliente; usa Copy password reset URL o Copy Invite URL desde el Admin Panel y comparte tú el enlace, como en el paso 11.
- Cualquier otra cosa: abre un ticket desde tu área de cliente (Cómo abrir un ticket de soporte y que se resuelva a la primera).