Prepara un servidor en Hetzner
Esta guía deja listo un servidor de Hetzner Cloud para Bring Your Own Server, con su firewall y su almacenamiento de copias de seguridad. Skysize instala todo lo demás en el servidor.
Cada paso tiene dos pestañas: haz clic en Console o pega desde Línea de comandos. Tu elección se aplica a toda la página.
Los comandos usan la herramienta de línea de comandos hcloud de Hetzner en tu propio ordenador. Para configurarla, crea un token de API con acceso de lectura y escritura en Security → API tokens en la Hetzner Console, luego ejecuta hcloud context create skysize y pega el token. También necesitas una clave SSH en ~/.ssh/id_ed25519.pub.
1. Elegir tus valores
Elige la ubicación más cercana a tus usuarios y el plan adecuado para tu uso.
| Uso | TYPE | vCPU | RAM | Disco |
|---|---|---|---|---|
| Una rama de producción y una de staging | cpx32 (compartido) | 4 | 8 GB | 160 GB |
ccx13 (dedicado) | 2 | 8 GB | 80 GB | |
| Producción con ramas de staging y de desarrollo | cpx42 (compartido) | 8 | 16 GB | 320 GB |
ccx23 (dedicado) | 4 | 16 GB | 160 GB |
Prefiere vCPU dedicadas en producción: las compartidas pueden variar según la carga de otros clientes. Evita los planes CAX: son ARM, y el instalador se niega a ejecutarse en ellos.
- Console
- Línea de comandos
En la Hetzner Console, abre tu proyecto. Usa la misma ubicación en todos los pasos.
LOCATION=nbg1
NAME=skysize-odoo
TYPE=cpx32
MY_IP=$(curl -4 -s https://ifconfig.me)/32
2. Crear el firewall
Un servidor nuevo de Hetzner no tiene firewall, así que todos los puertos están abiertos. Este solo permite lo necesario:
| Dirección | Protocolo | Puerto | Origen | Motivo |
|---|---|---|---|---|
| Entrante | TCP | 22 | Tu dirección IP | Tu acceso al servidor |
| Entrante | TCP | 80 | Any IPv4 and IPv6 | Certificados y redirecciones |
| Entrante | TCP | 443 | Any IPv4 and IPv6 | Tus sitios de Odoo |
No agregues reglas salientes, para que todo el tráfico saliente siga permitido: el servidor lo necesita. Skysize no necesita ningún puerto entrante propio. Deja PostgreSQL (5432) cerrado salvo que uses el acceso de solo lectura a la base de datos.
Si tu propia IP cambia, actualiza la regla del puerto 22 en la consola.
- Console
- Línea de comandos
- Abre Firewalls → Create Firewall y llámalo
skysize-odoo. - Agrega las tres reglas entrantes anteriores y elimina cualquier otra que proponga.
- Haz clic en Create Firewall. Lo aplicas al servidor en el paso siguiente.
hcloud firewall create --name "$NAME"
hcloud firewall add-rule "$NAME" --direction in --protocol tcp --port 22 --source-ips "$MY_IP"
hcloud firewall add-rule "$NAME" --direction in --protocol tcp --port 80 \
--source-ips 0.0.0.0/0 --source-ips ::/0
hcloud firewall add-rule "$NAME" --direction in --protocol tcp --port 443 \
--source-ips 0.0.0.0/0 --source-ips ::/0
3. Crear el servidor
Usa Ubuntu 24.04 y mantén la IPv4 pública que Skysize requiere. La IP no cambia mientras el servidor exista. Anótala: tus registros DNS apuntarán a ella.
- Console
- Línea de comandos
Haz clic en Create Server y configura:
| Opción | Valor |
|---|---|
| Location | La tuya |
| Image | Ubuntu 24.04 |
| Type | El plan del paso 1 |
| Networking | Deja Public IPv4 activado |
| SSH keys | Agrega la tuya |
| Firewalls | skysize-odoo |
| Name | skysize-odoo |
Luego haz clic en Create & Buy now.
hcloud ssh-key create --name "$NAME" --public-key-from-file ~/.ssh/id_ed25519.pub
hcloud server create --name "$NAME" --type "$TYPE" --image ubuntu-24.04 \
--location "$LOCATION" --ssh-key "$NAME" --firewall "$NAME"
hcloud server ip "$NAME"
4. Conectarse al servidor
ssh root@YOUR_SERVER_IP
Aquí es donde pegas el comando de instalación de Skysize.
5. Crear el almacenamiento de copias de seguridad
Skysize no hace copias de seguridad hasta que un proyecto tiene un destino de copias. En la Hetzner Console:
- Abre Object Storage y crea un bucket privado, idealmente en otra ubicación distinta a la de tu servidor.
- Abre Security → S3 credentials y genera una clave. Copia el secreto de inmediato: solo se muestra una vez.
6. Definir el destino de copias
Cuando tu proyecto exista, abre su Configuración → Destino de copias, haz clic en Añadir destino y completa:
| Campo | Valor |
|---|---|
| Tipo | Compatible con S3 (Wasabi, R2, MinIO...) |
| Bucket | El nombre de tu bucket |
| Endpoint | https://fsn1.your-objectstorage.com, con la ubicación de tu bucket |
| Región | La ubicación de tu bucket, por ejemplo fsn1 |
| Prefijo | El nombre del proyecto |
| ID de clave de acceso y Clave de acceso secreta | La clave del paso 5 |
Haz clic en Probar para comprobarlo desde tu servidor.
Enviar correo desde Odoo
Hetzner bloquea por defecto los puertos 25 y 465 salientes en los servidores cloud. Usa un relay SMTP en el puerto 587. Consulta Configurar el correo saliente.
Conectar el servidor a Skysize
Tu servidor está listo. Sigue Configura tu propio servidor, a partir del paso en el que se registra el servidor. En resumen: regístralo en el panel, conéctate a él por SSH y pega el comando de instalación. El estado cambia a En línea en menos de un minuto cuando termina el instalador.
Cuando tu primer proyecto esté en marcha, agrega tu dominio.
Si algo sale mal
El panel indica que los puertos 80 y 443 no son accesibles. Comprueba las reglas de firewall anteriores, y que la IP pública en la configuración del servidor es la que anotaste. Después haz clic en Comprobar de nuevo.
El servidor permanece en Desconectado. El servidor se conecta hacia afuera a Skysize, así que ninguna regla entrante soluciona esto. Ejecuta estos comandos en el servidor:
sudo systemctl status skysize-agent
sudo journalctl -u skysize-agent -n 50
nc -zv cp.skysize.io 50051
Si el instalador no terminó, o el token de acceso ya se usó, utiliza Regenerar token de acceso en la página del servidor y ejecuta de nuevo el comando de instalación.
¿Sigues sin poder resolverlo? Abre Soporte en el panel e incluye la salida de esos comandos.