L’auto-hébergement de solutions de partage d’images est une excellente option pour ceux qui souhaitent garder le contrôle sur leurs données tout en bénéficiant des fonctionnalités de plateformes comme Imgur. Voici quelques-unes des meilleures alternatives open source que vous pouvez envisager, avec des liens et des ressources utiles.
Table of Contents
Chevereto
Description: Chevereto est une plateforme de partage d’images auto-hébergée qui offre une interface utilisateur moderne et de nombreuses fonctionnalités. Bien qu’il existe une version gratuite, certaines options avancées (comme les uploads invités) nécessitent un abonnement payant.
Fonctionnalités:
- Interface utilisateur intuitive.
- Support des uploads en masse.
- Options de personnalisation variées.
- API disponible pour l’intégration.
Inconvénients: La version gratuite a des limitations, et les fonctionnalités avancées nécessitent un achat.
docker-compose.yml
services:
mysql:
image: mysql:8.0
container_name: chevereto_mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: root_password
MYSQL_DATABASE: chevereto
MYSQL_USER: chevereto_user
MYSQL_PASSWORD: user_password
volumes:
- mysql_data:/var/lib/mysql
chevereto:
image: chevereto/chevereto:latest
container_name: chevereto
restart: always
ports:
- "8080:80"
environment:
CHEVERETO_DB_HOST: mysql
CHEVERETO_DB_NAME: chevereto
CHEVERETO_DB_USER: chevereto_user
CHEVERETO_DB_PASS: user_password
CHEVERETO_DB_TABLE_PREFIX: chv_
CHEVERETO_TIMEZONE: Europe/Paris
CHEVERETO_LICENSE: "your_license_key_here" # Remplacez par votre clé de licence Chevereto
volumes:
- chevereto_data:/var/www/html/images
- chevereto_config:/var/www/html/conf
volumes:
mysql_data:
chevereto_data:
chevereto_config:
Explications :
- Service MySQL :
- Utilise l’image officielle
mysql:8.0
. - Crée une base de données
chevereto
avec un utilisateur spécifique. - Stocke les données MySQL dans un volume
mysql_data
.
- Utilise l’image officielle
- Service Chevereto (officiel) :
- Utilise l’image Docker officielle
chevereto/chevereto:latest
. - Redirige le port 8080 de l’hôte vers le port 80 du conteneur.
- Connecte Chevereto à la base de données MySQL.
- Vous devez remplacer
your_license_key_here
par votre clé de licence officielle Chevereto (obtenue sur le site officiel). - Stocke les images dans le volume
chevereto_data
et la configuration dans le volumechevereto_config
.
- Utilise l’image Docker officielle
Ressources:
ShotShare
Description: ShotShare est un projet léger et simple à utiliser pour le partage d’images. Il est conçu pour permettre aux utilisateurs de téléverser et de partager des images facilement, sans nécessiter d’inscription.
Fonctionnalités:
- Téléversements d’images sans compte utilisateur.
- Prise en charge des API pour l’intégration.
- Installation facile via Docker.
- Interface minimaliste.
Inconvénients: Moins de fonctionnalités avancées par rapport à Chevereto, mais idéal pour ceux qui recherchent la simplicité.
docker-compose.yml
Voici un exemple de fichier docker-compose.yml complet pour déployer ShotShare avec une base de données MySQL, en incluant la variable FORCE_HTTPS
:
version: '3.8'
services:
mysql:
image: mysql:5.7
container_name: shotshare_mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: root_password
MYSQL_DATABASE: shotshare
MYSQL_USER: shotshare_user
MYSQL_PASSWORD: user_password
volumes:
- mysql_data:/var/lib/mysql
shotshare:
image: mdshack/shotshare
container_name: shotshare
restart: always
ports:
- "8080:80"
environment:
FORCE_HTTPS: true
DB_HOST: mysql
DB_DATABASE: shotshare
DB_USERNAME: shotshare_user
DB_PASSWORD: user_password
TZ: Europe/Paris
volumes:
- shotshare_data:/app/uploads
volumes:
mysql_data:
shotshare_data:
Explications :
- MySQL Service:
- Utilise l’image officielle
mysql:5.7
. - Configure la base de données avec un nom, un utilisateur et un mot de passe.
- Stocke les données MySQL dans un volume nommé
mysql_data
. - ShotShare Service:
- Utilise l’image
mdshack/shotshare
. - Redirige le port 8080 de l’hôte vers le port 80 du conteneur.
- Inclut la variable d’environnement
FORCE_HTTPS
pour forcer l’utilisation de HTTPS. - Spécifie les informations de connexion à la base de données.
- Stocke les uploads dans un volume nommé
shotshare_data
.
Instructions :
- Remplacez
root_password
,user_password
par des mots de passe sécurisés de votre choix. - Enregistrez ce fichier sous le nom
docker-compose.yml
. - Exécutez la commande suivante dans le même répertoire que votre fichier
docker-compose.yml
:
docker-compose up -d
Cela lancera ShotShare avec MySQL, prêt à être utilisé derrière un reverse proxy.
Ressources:
Piwigo
Description: Piwigo est principalement une galerie de photos open source, mais il peut également être utilisé comme une alternative à Imgur. Il est particulièrement adapté pour la gestion et l’organisation de grandes collections d’images.
Fonctionnalités:
- Système de gestion des utilisateurs avec différents niveaux de permission.
- Support pour les albums et catégories.
- Plugins disponibles pour étendre les fonctionnalités.
Inconvénients: Moins axé sur le partage instantané par rapport à Chevereto et ShotShare.
Ressources:
Lychee
Description: Lychee est une autre solution de galerie photo auto-hébergée. Elle se concentre sur la simplicité et la facilité d’utilisation, tout en offrant un bon nombre de fonctionnalités pour gérer vos images.
Fonctionnalités:
- Interface élégante et moderne.
- Support des albums et des photos partagées.
- Options de personnalisation via des thèmes.
Inconvénients: Moins orienté vers le partage rapide d’images comparé à d’autres solutions.
Ressources:
Conclusion
Si je devais recommander une solution parmi celles-ci, ShotShare serait ma préférée pour sa simplicité et son efficacité. Sa facilité d’installation via Docker le rend accessible même pour ceux qui ne sont pas des experts en informatique.
Pour un usage plus complet avec des fonctionnalités avancées, Chevereto est également une excellente option, surtout si vous êtes prêt à investir dans la version PRO pour débloquer toutes les fonctionnalités.
L’auto-hébergement vous permet de garder le contrôle sur vos données tout en bénéficiant d’une expérience similaire à celle d’Imgur. Choisissez la solution qui correspond le mieux à vos besoins et à votre niveau de confort technique !