Comment héberger son blog Ghost avec Docker et Traefik en SSL - Partie 1.
Héberger son blog sur un serveur dédié, avec docker, Ghost et Traefik. Le tout en SSL. Le set-up est pas simple, mais on apprends plein de choses pendant le voyage, et c'est ce qui compte non ?
Ce guide est clairement pour vous une super occasion de créer quelque chose depuis rien tout en apprenant beaucoup de choses.
Et oui, créer et héberger son propre blog en 2021, en utilisant des outils stylés c’est faisable à condition de suivre le guide, on peut vite se perdre.
Alors nous ici, on va se focus sur des outils que vous avez ptet déjà entendu parlé, mais vous n’avez jamais pris le temps d’y aller à fond, bah go on va y aller.
Nous allons travailler les outils et concepts suivants
- Docker
- Hébergement de serveur dédié (ou VPS)
- Nom de domaine
- Ghost
- Traefik, SSL et DNS pour offrir tout ça au monde
- Cloudflare
Hébergement
Nous allons partir sur un VPS de chez OVH (cocorico) pour faire simple et peu couteux. Il faut tout de même choisir un serveur qui peut faire tourner Docker.
- Rendez vous sur votre serveur ou commandez en un à l’adresse suivante

- Choisissez à l’installation une distribution Ubuntu LTS sur laquelle nous viendrons installer Docker.

Laissez vous guider par l’assistant OVH, et vous devriez recevoir par mail vos identifiants de connexion au serveur.
Nom de domaines
Maintenant que vous avez un serveur, vous allez aussi récupérer un nom de domaine pour votre blog. Imaginons que nous souhaitions héberger notre blog à l’adresse https://blog.toto.io
Pour ce tutoriel je choisi OVH également pour récupérer mon nom de domaine, rien de plus simple sur le site d’OVH dédié aux noms de domaine
Et choisissez votre nom de domaine en fonction de vos envies et votre budget.
Vous pouvez évidemment aller sur n’importe quel autre plateforme proposant l’achat d’un nom de domaine (Gandi, Google Domain, etc.)
Une fois votre domaine acheté vous devriez le voir apparaitre sur votre tableau de bord OVH. https://www.ovh.com/manager/web/#/configuration/domains

Conservez cette page ouverte dans un coin.
Bien joué ! Nous avons un serveur et un nom de domaine, ca c’est cool.
Installation du serveur
C’est là que les choses fun commencent.
Connexion à son serveur
Sortez votre plus beau client SSH (Putty sous windows par exemple) et suivez le guide proposé ici https://docs.ovh.com/fr/vps/debuter-avec-vps/#connexion-a-votre-vps-gamme-actuelle et revenez quand vous serez fièrement connecté a votre bébé serveur.
Installation de Docker sur le VPS
$ sudo apt update
$ sudo apt install apt-transport-https ca-certificates curl software-properties-common
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"
sudo apt update
apt-cache policy docker-ce
sudo apt install docker-ce
sudo systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Thu 2018-07-05 15:08:39 UTC; 2min 55s ago
Docs: https://docs.docker.com
Main PID: 10096 (dockerd)
Tasks: 16
CGroup: /system.slice/docker.service
├─10096 /usr/bin/dockerd -H fd://
└─10113 docker-containerd --config /var/run/docker/containerd/containerd.toml
Pour plus d’infos, j’ai récupéré ces étapes sur le tutoriel de Digital Ocean qui est toujours une excellente source d’aide. Hésitez pas à bookmark leur site.
Installation de Docker-compose
Docker compose permet de gérer plus facilement les images docker sur votre serveur, on peut ainsi s’éviter de longues commande à taper dans le terminal. A l’inverse on va plutôt construire des fichier docker-compose.yml
qui seront réutilisable et bien plus simple à gérer que des lignes de commandes à rallonge.
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version
Et voilà !
J’ai trouvé ces commandes d’installation docker-compose
sur le site de Docker, leur documentation est rarement simple, mais pour Docker-compose c’est compréhensible.
To be continued
Dans la partie deux on terminera tout cela ! Stay tuned, le plus difficile est à venir (ca donne envie hein)
