Une fois que vous avez installé Docker et vous avez déjà tiré une image ou utilisé wordpress pour mettre en place un site Web, vous pouvez suivre ces étapes pour configurer SSL.

Commençons:

Etape 1 :

Installez nginx afin que nous puissions l’utiliser comme proxy inverse pour rediriger le trafic des conteneurs vers l’extérieur :

#apt install nginx

Etape 2:

Installez la certificats ssl gratuit letsencrypt :

#sudo apt install letsencrypt

#sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048

Etape 3:

Attribuez le certificat au bon répertoire personnel de votre site et remplacez example.com par votre nom de domaine

#letsencrypt certonly -a webroot \

–webroot-path=/var/www/example.com \

-d example.com -d www.example.com

Etape 4:

Créer le fichier Virtual host pour rediriger le trafic sécurisé de votre conteneur vers le monde extérieur :

# vi /etc/nginx/site-available/example.com.conf

server { listen 443 ssl;  server_name example.com www.example.com;

 ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;

 ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;

 ssl_session_cache shared:SSL:10m;

 ssl_session_timeout 5m;

 ssl_protocols TLSv1 TLSv1.1 TLSv1.2;

 ssl_prefer_server_ciphers on;

 ssl_dhparam /etc/ssl/certs/dhparam.pem;

 ssl_ciphers ‘EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH’;

 ssl_stapling on;

 ssl_stapling_verify on;

 add_header Strict-Transport-Security max-age=15768000;

 location “/.well-known/acme-challenge” {

   default_type “text/plain”;

   root /var/www/example.com;

   allow all;

 }

 location / {

   proxy_pass http://0.0.0.0:1234; //put port number of your image

   proxy_set_header Host $host;

   proxy_set_header X-Real-IP $remote_addr;

   proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

   proxy_set_header X-Forwarded-Proto $scheme;

 }}