Exposer son site web statique globalement et gratuitement avec Cloudflare Workers …

Image for post
Image for post

Je pars pour cette expérience d’une petite instance Ubuntu 18.04 ARM 64 Bits dans Scaleway :

Image for post
Image for post

Et j’y déploie la version LTS de Node.js accompagné de PM2 de Keymetrics qui est configuré pour être lié à un dashboard de monitoring :

Image for post
Image for post
Image for post
Image for post

J’y installe Serve pour exposer localement du contenu statique :

Image for post
Image for post
Image for post
Image for post

Je récupère une page HTML unique représentant mon site web :

Image for post
Image for post

que je vais exposer localement via Serve et PM2 :

Image for post
Image for post

et je lance le script :

Image for post
Image for post
Image for post
Image for post

avec des métriques de base sur les processus en cours dans le dashboard de PM2.io :

Image for post
Image for post

Et le site web est disponible à partir de l’adresse IP publique de l’instance :

Image for post
Image for post
Image for post
Image for post

Je vais alors utiliser Cloudflare Workers qui permet de créer des applications sans serveur sur le réseau cloud mondial de Cloudflare s’étendant sur 200 villes dans plus de 90 pays. Cloudflare Workers fournit un environnement d’exécution JavaScript léger qui permet aux développeurs de renforcer les applications existantes ou d’en créer de toutes nouvelles sans avoir à configurer ou à maintenir l’infrastructure …

Image for post
Image for post
Image for post
Image for post

Je crée mon premier Worker depuis le dashboard client de Cloudflare :

Image for post
Image for post

Je reprends un des template de Cloudflare pour charger depuis l’instance ARM 64 Bits dans Scaleway l’unique page HTML par ce worker via ce template type :

que je personnalise de la sorte :

Image for post
Image for post
Image for post
Image for post
Image for post
Image for post

Et la page web est accessible :

Image for post
Image for post

Je crée un second worker qui lui n’aura pas besoin de se connecter à l’instance car il portera directement la page HTML sur la base de ce template type (remplacer la partie HTML par sa page web) :

Image for post
Image for post

Prévisualisation dans le dashboard de Cloudflare avant publication :

Image for post
Image for post
Image for post
Image for post

Et la page web est accessible également avec ce second worker :

Image for post
Image for post
Image for post
Image for post

Comme ceci est gratuit, on est limité au nombre de requêtes sur ces Workers (100000) :

Image for post
Image for post
Image for post
Image for post

En fait Cloudflare propose Cloudflare Workers Sites qui exploitent la puissance des Workers et Workers KV en permettant aux développeurs de télécharger leurs sites directement au plus près des utilisateurs finaux.

https://blog.cloudflare.com/workers-sites/

Image for post
Image for post

Les Workers Sites sont déployés avec quelques commandes de terminal et peuvent servir un site généré par n’importe quel générateur de site statique, tel que Hugo, Gatsby ou Jekyll mais moyennant une souscription …

Image for post
Image for post

À suivre ! …

Image for post
Image for post

Originally published at https://dev.to on April 6, 2020.

Above the clouds, the sky is always blue ...

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store