imgproxy : un proxy pour vos images
imgproxy est un reverse proxy pour les images avec plein de fonctionnalités intéressantes dans la version gratuite :
- Redimensionnement d’images à la volée
- Cacher l’url source avec un système de signature
- Les options sont multiples :
- Redimensionnement d’images
- Avec plein d’options sur le format
- Choix de l’algo (qualité)
- Rotation
- Arrière plan
- Luminosité, contraste, Saturation
- Pixelisation
- Filigrame
- Redimensionnement d’images
Il existe une version pro avec des fonctionnalités complémentaires
Générer des url avec un script
Avec ce script : Generate imgproxy url in browser and Node easily. Lightweight and Fast!
# npm
npm install @misaon/imgproxy
# yarn
yarn add @misaon/imgproxy
# pnpm
pnpm install @misaon/imgproxy
Si vous n’avez pas la bonne version de nodejs, c’est possible de le faire avec docker
docker pull node
Puis lancer une console dans le docker :
docker run -it -v /tmp/:/tmp/ --entrypoint bash node:latest
su - node
# npm
npm install @misaon/imgproxy
# yarn
yarn add @misaon/imgproxy
# pnpm
pnpm install @misaon/imgproxy
Sur la machine qui héberge le docker, dans /tmp éditer un fichier test.mjs
Url de l’image d’origine : https://live.staticflickr.com/65535/52855625912_656d1cc302_o.jpg
import { getImageUrl } from "@misaon/imgproxy";
const imageUrl = getImageUrl("https://live.staticflickr.com/65535/52855625912_656d1cc302_o.jpg", {
baseURL: "http://localhost:8080/", // optional
secret: "VOTRE-SECRET",
salt: "VOTRE-CLE-SALT",
modifiers: {
blur: "5",
width: "1200",
height: "1200",
watermark: "1:soea:::0.2",
},
});
console.log(imageUrl);
$ node /tmp/temp/test.mjs
Résultat une URL :
http://localhost:8080/0yjATZNUS7aFKvLpC_5sZEi8Lq4Vi_f7RA9xBUuIQho/bl:5/h:1200/wm:1:soea:::0.2/w:1200/aHR0cHM6Ly9saXZlLnN0YXRpY2ZsaWNrci5jb20vNjU1MzUvNTI4NTU2MjU5MTJfNjU2ZDFjYzMwMl9vLmpwZw
Avec ce résultat :
- Flou Gaussien
- Watermark

imgproxy a été lancé avec ces paramètres :
- le chemin vers le watermark
docker run -e IMGPROXY_KEY=VOTRE-CLE -e IMGPROXY_SALT=VOTRE-CLE-SALT -e IMGPROXY_WATERMARK_PATH=/tmp/filigrame.png -v /tmp:/tmp -p 8080:8080 -it darthsim/imgproxy
Tous les articles sur ce thème : IA, data et numérique depuis les Alpes
À lire aussi
- Panoramax : transférer ses photos Mapillary, retour d’expérience
- IA, data et numérique depuis les Alpes
Qui écrit ici ?
Je suis Alexandre Modesto. Depuis plus de vingt ans, je connecte la Maurienne au monde (fibre, webcams, faisceaux hertziens) et je suis ses laves torrentielles et ses éboulements sur le long terme. En savoir plus sur moi ou m’écrire.
Toutes les deux semaines, ma lettre L’Univers n’est pas la limite part d’une observation de terrain et dit ce que l’IA, l’énergie et le climat changent. Gratuite, sans publicité, et on se désabonne en un clic.