🛠 Héberger un serveur web léger

Raspberry Pi 3 Model B (model-3b) · avance · Schéma : IMG-model-3b-avance-3-model3b-serveur-web-leger.svg — Raspberry Pi 3 Model B servant un site statique sur le port 8080, service systemd, clients du réseau local connectés par Ethernet/Wi-Fi, contrainte mémoire 1 Go rappelée

Objetivos

Transformar la Raspberry Pi 3 Model B en un pequeño servidor web permanente: servir un sitio estático, encapsularlo en un servicio systemd (inicio automático + reinicio en caso de fallo) y respetar la restricción de memoria de 1 GB, que impone el uso de servidores ligeros. Esta es la pieza básica de un panel doméstico, un Pi-hole-like o un espejo conectado.

Material

Código completo

# 1) Dossier du site
mkdir -p ~/site && echo '<h1>Pi 3B opérationnel</h1>' > ~/site/index.html

# 2) Service systemd — serveur Python intégré, port 8080
sudo tee /etc/systemd/system/pisite.service <<'EOF'
[Unit]
Description=Site statique du Pi 3B
After=network-online.target

[Service]
User=pi
WorkingDirectory=/home/pi/site
ExecStart=/usr/bin/python3 -m http.server 8080 --bind 0.0.0.0
Restart=always
RestartSec=3
MemoryMax=200M

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable --now pisite
sudo systemctl status pisite --no-pager

# 3) Test local puis distant
curl -s http://localhost:8080/ | head -1
#   depuis un autre poste : curl http://raspberrypi.local:8080/

Verificación esperada

systemctl status pisite muestra active (running). curl 2 devuelve el <h1> del sitio, y desde otro equipo de la red, http://raspberrypi.local:8080/ muestra la página en el navegador. Tras kill del proceso, systemd lo reinicia en 3 s. systemd-run/free -m muestra la huella de memoria por debajo del límite MemoryMax=200M`. Tras un reinicio completo, el servicio se levanta solo.

Errores frecuentes

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales