Projecte Proxmox: Ubuntu, DeepSeek i un sol web a /var/www/html/
projectes 08/07/2026

Projecte Proxmox: Ubuntu, DeepSeek i un sol web a /var/www/html/

Pla Proxmox node pve (64 GiB RAM): crear CT Ubuntu 24.04 amb 4 GB RAM, 2 vCPU i SSH. Passos resaltats per Crea CT (no VM), stack web i DeepSeek.

Aquest post obre una sèrie de seguiment: muntar a casa un entorn Proxmox amb un contenidor Ubuntu, instal·lar intel·ligència artificial (preferència DeepSeek) i administrar un sol projecte web desplegat a /var/www/html/.

Anirem actualitzant aquest fil conforme avancem. Quan el contenidor estigui operatiu, continuarem la configuració connectant-nos per SSH des de Cursor.

Objectiu

  • Hypervisor: Proxmox VE (clúster domèstic).
  • Contenidor: LXC Ubuntu 24.04 (lleuger, ràpid, fàcil de clonar).
  • Web: un únic projecte a /var/www/html/.
  • IA: DeepSeek per assistir en administració, codi, logs i manteniment.
  • Documentació: cada pas queda registrat al blog (categoria projectes).

VM o contenidor LXC? (la opció lleugera)

A Proxmox tens dues maneres de crear un «servidor» Ubuntu. L'opció més lleugera i ràpida que buscaves és el contenidor LXC (a Proxmox es diu CT, Container), no una màquina virtual completa.

Contenidor LXC (CT) ✅ recomanatMàquina virtual (VM)
Què és Ubuntu «compartint» el nucli (kernel) del host Proxmox Ordinador simulat complet amb el seu propi kernel
RAM típica 512 MB – 2 GB n'hi ha prou per Apache+PHP+MySQL 2–4 GB mínim recomanat
Arrencada Segons (molt ràpida) Minuts (com un PC real)
Overhead Mínim: quasi natiu QEMU/KVM: més CPU i disc
Backup / clonació Molt ràpid des de Proxmox Més lent (disc complet)
Quan triar VM Si necessites un altre SO (Windows), kernel propi, Docker dins amb privilegis especials, o GPU pass-through

Decisió per aquest projecte: crear un CT Ubuntu 24.04 (LXC), no una VM. Per un sol web PHP a /var/www/html/ és la millor relació rendiment / recursos / simplicitat.

RAM del node pve (mesurat)

RecursValor
HostProxmox VE 8.x · node pve
CPUAMD Ryzen 9 7900X (24 fils) — molt de marge
RAM total64 GiB (~61,95 GiB)
RAM en ús~14 GiB (23%) — host + CT 100, 102, 103, 104
RAM lliure~47–48 GiB
CT existents4 × 4 GiB assignats cadascun (ús real baix: ~70–450 MiB per CT)

Conclusió: podem assignar 4 GiB RAM al nou CT sense cap problema.

▶ PAS SEGÜENT — Crear el CT a Proxmox (ara mateix)

Important: fes servir Crea CT (contenidor LXC). NO facis clic a Crea VM.

Resum de la configuració

  • Tipus: Contenidor LXC (CT) — no màquina virtual
  • Sistema: Ubuntu 24.04 (plantilla standard)
  • RAM: 4 GB (4096 MiB)
  • CPU: 2 vCPU
  • Disc: 20–32 GB a local-zfs
  • Xarxa: bridge vmbr0 · IP de la LAN (DHCP reservada o estàtica)
  • SSH: activat amb clau pública

Pas a pas a la interfície (Català)

  1. 1. General
    Clica Crea CT (botó blau, dalt a la dreta).
    Node: pve · CT ID: següent lliure (p. ex. 105) · Nom d'amfitrió: ubuntu-web-ai (o el que vulguis).
    Contrasenya d'usuari root del contenidor (guarda-la en un gestor de contrasenyes).
  2. 2. Plantilla OS
    Emmagatzematge: local (plantilles).
    Si no tens Ubuntu 24.04: ves a pve → local → CT Plantilles i descarrega ubuntu-24.04-standard.
    Tria la plantilla ubuntu-24.04-standard.
  3. 3. Discs
    Emmagatzematge: local-zfs (com els CT 100–104).
    Mida del disc: 32 GB (mínim 20 GB).
  4. 4. CPU
    Núcleos: 2. Tipus: host o per defecte.
  5. 5. Memòria
    Memòria (MiB): 4096 (= 4 GB).
  6. 6. Xarxa
    Pont: vmbr0 · IPv4: DHCP (o IP estàtica de la teva LAN, p. ex. 192.168.1.x).
    Anota la IP que rebi el CT (o la que assignis).
  7. 7. DNS
    Deixa els valors per defecte (hereta del host) llevat que tinguis DNS propi.
  8. 8. Confirma
    Revisa el resum · marca «Inicia després de la creació» · Finalitza.
  9. 9. SSH (dins del CT)
    Obre la Consola del CT nou o connecta per SSH quan tingui IP.
    apt update && apt upgrade -y
    apt install -y openssh-server
    systemctl enable --now ssh
    Des del teu PC, copia la clau SSH pública al CT (substitueix la IP):
    ssh-copy-id root@IP_DEL_CT
    Prova: ssh root@IP_DEL_CT

Quan funcioni SSH, escriu-me la IP i el hostname del CT. Connectarem des de Cursor i continuem amb la Fase 2 (Apache + PHP + MySQL a /var/www/html/).

PHP fet amb Cursor vs WordPress: què triar?

Per a un sol projecte web que volem controlar i fer créixer amb ajuda d'IA, la decisió depèn del tipus de lloc:

CriteriPHP a mida (Cursor)WordPress
Tipus de projecte Portal, CRM, gestió interna, app a mida (com Nítida, el blog index.php…) Blog, web corporativa, catàleg amb edició per usuaris no tècnics
Control del codi Total: cada fitxer és teu, sense plugins obsolets Dependència de temes/plugins i actualitzacions de tercers
IA (DeepSeek / Cursor) Excel·lent: el codi és clar, modular i fàcil de refactoritzar Bo per contingut, però el core WP + plugins complica el context
Rendiment LXC Lleuger: Apache/Nginx + PHP-FPM + MySQL Més pesat: WP + plugins + cron + base de dades gran
Seguretat Superfície petita si el codi és propi Més superfície d'atac (plugins, xmlrpc, login WP…)
Temps d'arrencada Mitjà: cal desenvolupar funcionalitats Ràpid si el lloc és bàsicament contingut

Recomanació per aquest projecte

PHP a mida amb Cursor si el web és una aplicació concreta (gestió, portal, eina interna). Ja treballes així localment (htdocs, mòduls Nítida, blog monolític) i DeepSeek/Cursor entenen molt bé un codebase PHP propi.

WordPress només si el que vols és sobretot publicar pàgines i entrades sense tocar codi. Es pot instal·lar a /var/www/html/, però no és l'opció ideal per «administrar un projecte» amb IA si el projecte és una app personalitzada.

Decisió provisional: començar amb PHP + Apache + MySQL en un LXC Ubuntu, replicant l'estratègia del servidor local Windows, adaptada a Linux.

Arquitectura proposada

┌─────────────────────────────────────────┐
│           Proxmox VE (casa)             │
│  ┌───────────────────────────────────┐  │
│  │  LXC: ubuntu-web-ai               │  │
│  │  · Ubuntu 24.04                   │  │
│  │  · Apache + PHP 8.2 + MySQL 8     │  │
│  │  · /var/www/html/  (1 projecte)   │  │
│  │  · DeepSeek API / Ollama (opc.)   │  │
│  │  · SSH + clau per Cursor          │  │
│  └───────────────────────────────────┘  │
└─────────────────────────────────────────┘

DeepSeek: com encaixa?

  • Desenvolupament (ara): DeepSeek dins Cursor per generar i mantenir el codi PHP.
  • Al servidor (fase 2):
    • API DeepSeek — sense GPU al LXC; ideal per scripts d'administració, anàlisi de logs, generació de configs.
    • Ollama + model DeepSeek — només si hi ha RAM/ GPU suficient al host o una VM dedicada; no és imprescindible al primer LXC.
  • Ús pràctic: assistent per revisar apache2, permisos, backups, actualitzacions i errors PHP — no cal que la IA executi comandes sense supervisió.

Full de ruta (anirem marcant)

Fase 1 — Proxmox i contenidor LXC

  1. Completat: anàlisi de RAM del node pve (64 GiB, ~47 GiB lliures).
  2. Ara: crear CT segons el quadre verd «PAS SEGÜENT» (4 GB RAM, 2 vCPU, 32 GB local-zfs).
  3. ⏳ Activar SSH i provar ssh root@IP des del PC.
  4. ⏳ Registrar IP i hostname d'aquest CT al blog.
  5. apt update && apt upgrade -y dins del CT.

Fase 2 — Stack web

  1. Instal·lar Apache, PHP 8.2 (extensions: mysqli, curl, gd, mbstring, zip, intl).
  2. Instal·lar MySQL 8 o MariaDB.
  3. DocumentRoot: /var/www/html amb propietari www-data.
  4. VirtualHost per domini local / IP LAN.
  5. Pàgina de prova info.php o index.php mínim.

Fase 3 — Projecte

  1. Decidir definitivament PHP a mida vs WordPress (segons taula anterior).
  2. Desplegar codi a /var/www/html/ (git clone, rsync o SFTP).
  3. Configurar base de dades i .env / config PHP.
  4. Provar des del navegador de la xarxa local.

Fase 4 — IA i operació

  1. Configurar clau API DeepSeek (variable d'entorn, mai al repositori).
  2. Script opcional d'assistència (logs, espai disc, estat serveis).
  3. Backup Proxmox del CT + dump MySQL programat.
  4. Firewall (ufw): 22, 80, 443 només des de LAN si és possible.

Fase 5 — Cursor + SSH

  1. Obrir el projecte remot a Cursor via SSH (user@ip-del-ct).
  2. Continuar desenvolupament i documentació des del servidor real.
  3. Actualitzar aquest post amb IP, hostname i lliçons apreses.

Recursos i convencions

  • Ruta web: /var/www/html/
  • Usuari servei: www-data
  • Logs Apache: /var/log/apache2/
  • Config Apache: /etc/apache2/sites-available/
  • No commitejar: claus API, contrasenyes MySQL, fitxers .env

Pròxim pas

Segueix el quadre verd «PAS SEGÜENT» de dalt: Crea CT → Ubuntu 24.04 → 4 GB RAM → 2 vCPU → local-zfs → xarxa LAN → SSH. Quan tinguis IP i accés SSH, continuem des de Cursor.

Aquest post es mantindrà actualitzat automàticament en carregar el blog (contingut i imatge). La categoria i etiquetes només s'assignen en crear el post; les edicions manuals des del formulari es respecten.

Enllaços d'interès