Installation d'un blog Hugo
tl;dr:
petit manuel à destination du dev paresseux
Installation du blog
Installation de hugo
Sur une machine sous Linux (Debian):
sudo apt install hugo
Création du blog
Dans le dossier où on veut que le blog soit créé:
hugo new site dev-blog
Installation du thème
Se poser dans le dossier des thèmes et cloner le thème voulu:
cd dev-blog/themes
git clone https://github.com/athul/archie.git
echo 'theme="archie"' >> ../hugo.toml
Création d’un premier post
# on revient à la racine
cd ..
hugo new posts/installation-blog.md
Déploiement du blog
On génère le statique du blog…
hugo
… puis on vérifie qu’on a bien ce qu’on veut dans public.
On copie sur le serveur:
rsync -avz --progress public <user>@<ip_ou_name_server>:<path>
On modifie la config nginx:
server {
listen 80;
listen [::]:80;
server_name <domain>;
# Prevent nginx HTTP Server Detection
server_tokens off;
# Enforce HTTPS
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name <domain> www.<domain>;
client_max_body_size 100m;
ssl_certificate /etc/nginx/cert/fullchain.pem;
ssl_certificate_key /etc/nginx/cert/privkey.pem;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:50m;
root <path_to_public_files>;
location / {
try_files $uri $uri/ /index.html;
}
}
On génère les certifs:
certbot certonly --nginx -d <domain> -d www.<domain> ...