# HUGO SITE AVEC DOCKER Cette branche à pour but de conteneurisé un site HUGO compilé avec un server NGINX. La configuration pour le NGINX reverse proxy en front se trouve dans le dossir nginx-proxy. ## UTILISATION: Pour l'utiliser avec un autre site Hugo, copier simplement la Dockerfile ou le docker-compose.yml ainsi que les dossiers nginx-docker et nginx-proxy à la racine du projet Hugo (à côté du config.toml) et éxécuter la commande pour construire le site: ```bash hugo ``` Un dossier public s'est créé avec les fichiers statiques du site, il faut maintenant configurer les Nginx (le proxy et celui dans l'image Docker: ## CONFIGURATION: Editer le fichier de configuration ```bash nano nginx-proxy/nginx.conf ``` /\ Attention, le nom de domaine (ici exemple.com) est à configuré dans le proxy NGINX ! Une fois tout bien renseigné Redémarrer NGINX: ```bash sudo systemctl restart nginx ``` ## DEMARRER L'IMAGE: ### VIA DOCKER ```bash docker build -t hugo/hugo-site . docker run -d -p 6666:80 --name hugo-site hugo/hugo-site ``` ### VIA DOCKER-COMPOSE ```bash docker-compose up -d ``` ### HTTPS: Via Certbot: ```bash sudo apt install certbot -y sudo certbot certonly -d example.com ``` Une fois le certificat obtenu, décommenter les 3 lignes concernant le SSL en vérifiant le nom des certificats en fonction du nom de domaine: ``` #ssl on; #ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; #ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ``` Créer une redirection vers le HTTPS dans le bloc server HTTP: ``` return 301 https://$host$request_uri; ```