Capitulo 2: Requisitos y Preparacion del VPS

Por: Artiko
dokployvpsrequisitosservidor

Capitulo 2: Requisitos y Preparacion del VPS

< Volver al Indice del Tutorial

Requisitos Minimos de Hardware

Dokploy corre sobre Docker y necesita recursos para sus propios contenedores (panel, PostgreSQL, Redis, Traefik) mas los recursos de las aplicaciones que despliegues.

Minimo absoluto

RecursoMinimoDescripcion
CPU1 vCPUSuficiente para el panel y apps ligeras
RAM1 GBDokploy base consume ~512 MB
Disco20 GBSO + Docker images + datos
Red1 GbpsEstandar en la mayoria de proveedores

Recomendado para produccion

RecursoRecomendadoDescripcion
CPU2 vCPUBuilds mas rapidos, multiples apps
RAM2-4 GBMargen para bases de datos y builds
Disco40-80 GBEspacio para imagenes Docker y backups
Red1 GbpsEstandar

Los builds de aplicaciones (especialmente con Nixpacks o Dockerfile multi-stage) consumen RAM temporal. Con 1 GB puedes quedarte corto durante el build de proyectos grandes.

Sistemas Operativos Soportados

Dokploy funciona sobre cualquier distribucion Linux que soporte Docker:

Ubuntu 22.04 LTS o 24.04 LTS son las opciones mas seguras por soporte a largo plazo y compatibilidad garantizada.

Proveedores VPS Recomendados

Hetzner (recomendado por precio/rendimiento)

PlanvCPURAMDiscoPrecio
CX2224 GB40 GB~4.50 EUR/mes
CX3248 GB80 GB~8.50 EUR/mes

Datacenters en Europa (Alemania, Finlandia) y USA (Ashburn, Hillsboro). Mejor relacion precio/rendimiento del mercado.

DigitalOcean

PlanvCPURAMDiscoPrecio
Basic12 GB50 GB12 USD/mes
Basic24 GB80 GB24 USD/mes

Buena documentacion, interfaz intuitiva. Mas caro que Hetzner pero con datacenters globales.

Vultr

PlanvCPURAMDiscoPrecio
Cloud12 GB50 GB12 USD/mes
Cloud24 GB80 GB24 USD/mes

Similar a DigitalOcean en precios. Datacenters en multiples regiones incluyendo Latinoamerica (Sao Paulo).

Contabo

PlanvCPURAMDiscoPrecio
VPS S48 GB50 GB~6.50 EUR/mes
VPS M616 GB100 GB~10.50 EUR/mes

Precios muy bajos con mucho hardware. La contrapartida es que el rendimiento de disco y red puede ser inferior a Hetzner. Util para entornos de desarrollo o staging.

Preparacion del Servidor

Una vez que tienes tu VPS con Ubuntu 22.04/24.04, conectate por SSH y sigue estos pasos.

Paso 1: Actualizar el sistema

sudo apt update && sudo apt upgrade -y

Paso 2: Crear usuario no-root

Nunca ejecutes servicios como root en produccion. Crea un usuario dedicado:

sudo adduser dokploy
sudo usermod -aG sudo dokploy

Cambia al nuevo usuario:

su - dokploy

Paso 3: Configurar SSH seguro

Copia tu clave publica al servidor (ejecuta esto desde tu maquina local):

ssh-copy-id dokploy@tu-servidor-ip

Edita la configuracion de SSH en el servidor:

sudo nano /etc/ssh/sshd_config

Modifica estas lineas:

PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes

Reinicia el servicio SSH:

sudo systemctl restart sshd

A partir de ahora solo puedes acceder con clave SSH, nunca con password.

Paso 4: Configurar firewall con UFW

UFW (Uncomplicated Firewall) permite controlar el trafico entrante de forma simple:

sudo apt install ufw -y

Configura las reglas basicas:

# Permitir SSH (imprescindible, no lo olvides o perderas acceso)
sudo ufw allow 22/tcp

# Permitir HTTP y HTTPS para Traefik
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# Permitir el puerto del panel de Dokploy (solo durante setup inicial)
sudo ufw allow 3000/tcp

# Activar el firewall
sudo ufw enable

Verifica las reglas activas:

sudo ufw status verbose

Salida esperada:

Status: active

To                         Action      From
--                         ------      ----
22/tcp                     ALLOW       Anywhere
80/tcp                     ALLOW       Anywhere
443/tcp                    ALLOW       Anywhere
3000/tcp                   ALLOW       Anywhere

Una vez que configures un dominio con SSL para el panel, puedes cerrar el puerto 3000:

sudo ufw delete allow 3000/tcp

Paso 5: Configurar timezone

sudo timedatectl set-timezone America/Mexico_City

Sustituye con tu zona horaria. Puedes listar las disponibles con:

timedatectl list-timezones

Instalar Docker y Docker Compose

Dokploy requiere Docker instalado en el servidor. El script de instalacion de Dokploy puede instalarlo automaticamente, pero es buena practica tenerlo previamente configurado.

Instalar Docker Engine

Agrega el repositorio oficial de Docker:

# Instalar dependencias
sudo apt install ca-certificates curl gnupg -y

# Agregar la clave GPG de Docker
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \
  sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg

# Agregar el repositorio
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \
  https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Instala Docker:

sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io \
  docker-buildx-plugin docker-compose-plugin -y

Agregar usuario al grupo docker

Para ejecutar Docker sin sudo:

sudo usermod -aG docker $USER
newgrp docker

Verificar la instalacion

docker --version
docker compose version
docker run hello-world

Salida esperada del hello-world:

Hello from Docker!
This message shows that your installation appears to be working correctly.

Habilitar Docker en el arranque

sudo systemctl enable docker
sudo systemctl enable containerd

Verificacion Final

Antes de proceder con la instalacion de Dokploy, confirma que todo esta en orden:

# Sistema actualizado
cat /etc/os-release | head -3

# Docker funcionando
docker info | head -5

# Firewall activo
sudo ufw status

# Espacio en disco disponible
df -h /

Con el servidor preparado, estamos listos para instalar Dokploy en el siguiente capitulo.


Siguiente: Capitulo 3: Instalacion —>