Utilisation d'un CMS pour partage photo

Le plus simple et léger possible

L'auteur de ce sujet a trouvé une solution à son problème.
Auteur du sujet

Bonjour à tous.

Je souhaite auto héberger sur un PC un petit système de partage de photo. J'ai pas envie de me faire chier, je suis donc à la recherche d'un CMS.

Éléments importants :

  • Le système doit disposer d'une authentification. Je souhaite partager les photos qu'avec des personnes identifiées.
  • Je suis ouvert à presque toute techno, tant que ca tourne sur une debian stable 8 (PHP, Django, RoR). Pas de Java, faut pas déconner.
  • Je souhaite me taper le moins de config possible post-installation. Idéalement, je voudrais que ca marche out of the box. (ou le plus possible).

Mes recherches font ressortir des dizaines de CMS et j'avoue ne pas savoir vers quoi me tourner. Si vous avez des idées.

Merci ! David.

Édité par Coyote

+0 -0
Auteur du sujet

T'as quoi contre Java ? Oo

La conviction profonde que faire du Java pour faire faire du Web est une aberration sans nom. C'est gratuit mais c'est comme ca =p.

Mais sinon, Owncloud devrait suffire non ?

Aucune idée, c'est pour ce que je demande des avis ^^. Je vais me pencher dessus.

+0 -1
Staff

ownCloud c'est bien pour partager des fichiers. Quand c'est pour présenter des photos, pas sûr que ce soit le meilleur choix. A voir suivant l'orientation de l'OP.

A une époque j'avais utilisé un pseudo-CMS de photos qui était pas trop mal et très simple, mais j'ai plus le nom en tête…

Peut-être que cet article peut t'aider à faire ton choix, suivant tes besoins précis.

Édité par viki53

Staff

T'as quoi contre Java ? Oo

La conviction profonde que faire du Java pour faire faire du Web est une aberration sans nom. C'est gratuit mais c'est comme ca =p.

Davidbrcz

Donc en gros, tu ne connais absolument rien à Java et tu préfères te fermer des portes sur des à-priori. C'est triste.

Alors c'est vrai que sortir l'artillerie Java EE complète pour un besoin de ce type est clairement délirant, mais on peut avoir des choses très efficaces sur un serveur de servlet comme Tomcat.

Auteur du sujet

Donc en gros, tu ne connais absolument rien à Java et tu préfères te fermer des portes sur des à-priori. C'est triste.

Alors c'est vrai que sortir l'artillerie Java EE complète pour un besoin de ce type est clairement délirant, mais on peut avoir des choses très efficaces sur un serveur de servlet comme Tomcat.


Je fais déjà assez de Java en ce moment à mon gout pour ne pas avoir envie de ma palucher l'installation et la maintenance d'un serveur de servlet pour quelque chose d'aussi élémentaire. Donc je bannis java des options que j'envisage.

Mais ca tiendrait qu'à moi, je bannirai tout le langage et toutes ses applications sérieuses, web ou pas. Ceci résumé bien mon avis sur Java . Mais je ne suis pas là pour troller sur Java (bien trop chronophage pour un résultat couru d'avance, tout le monde campe sur ses positions).


Au niveau solution, owncloud propose quelque chose dropbox like. Ca peut effectivement être une solution, surtout que ca à l'air d'apporter quelques trucs en plus sympathique.

Édité par Davidbrcz

+0 -0
Staff

Je fais déjà assez de Java en ce moment à mon gout pour ne pas avoir envie de ma palucher l'installation et la maintenance d'un serveur de servlet pour quelque chose d'aussi élémentaire. Donc je bannis java des options que j'envisage.

L'installation de Subsonic (dans son format le plus compliqué à installer, le .war à déployer sur un Tomcat) m'a pris très exactement 10 minutes, et me prends 30 secondes à chaque mise à jour : apt-get install tomcat7, déposer le .war dans le bon dossier et systemctl restart tomcat7.service. Les 2 dernières étapes suffisent pour une MAJ.

Quant à la maintenance du serveur de servlet, c'est comme le reste : sudo apt update et sudo apt upgrade.

Pour héberger du Django sur le même serveur, l'installation et la maintenance de Django sont beaucoup plus chronophages.

Ceci résumé bien mon avis sur Java .

C'est bien dommage, une lecture en diagonale me permet de voir que cet article est une blague, compare des choses non comparables, ne s'applique absolument pas au web (il critique principalement Java vs C ou C++). En gros l'auteur fait partie de la trop forte proportion de gens qui essaie d'utiliser Java comme C++ sans essayer de comprendre comment fonctionne le langage (en particulier son modèle mémoire), et donc forcément ça foire lamentablement.

Bref, y'a plein à redire sur Java, et y'a des tas de domaines dans lequel c'est inintéressant de l'utiliser. Y'a encore plus à redire sur la lourdeur de Java EE, et y'a plein de scénarios dans lesquels c'est pas une solution pour un site web (dont le tien). Mais si tu veux bannir un langage, fais-le pour de vraies raisons.

de ma palucher l'installation et la maintenance d'un serveur de servlet pour quelque chose d'aussi élémentaire.

Java n'est pas Java EE.

Avec les technos citées ci-dessus, lancer ton app (web) c'est :

java -jar tonApp.jar

Point.

En termes de perf, une comparaison assez sérieuse (mais qui commence à dater) ici

T'as le droit d'avoir des préjugés. Après c'est aussi à nous de te mettre le nez dans tes bêtises.

C'est juste relou de lire des gens qui ont des préjugés qui datent de Java 4 venir parler de "pourquoi c'est bien" "pourquoi c'est mal". La JVM dispose certainement de l'écosystème le plus riche du marché (pour l'anecdote : l'implémentation de ruby sur la JVM est dans certains cas (au moins) plus efficace que l'interpréteur ruby). Le langage lui-même a un nombre incalculable de défauts, dont beaucoup ont été corrigés dans Java 8.

Je préfère 100 fois écrire une API REST en Java 8 qu'en Javascript (ES5) (pour comparer nodejs aux technos sus-citées), c'et tout simplement plus élégant, et de loin. Que ce soit avec des décorateurs (annotations) ou des lambdas.

Faut juste arrêter de dire n'importe quoi. Si j'en étais là, moi aussi j'ai mis le nez dans du code C++ datant d'Hérode, très mal écrit, etc. Je ne juge pas pour autant le langage là-dessus.

EDIT : surtout quand tu viens poser ce genre de questions basiques en te fendant d'un préjugé "Je pensais que c'était assez basique mais faut croire que non…" qui prouve que tu ne connais pas la techno dont tu parles. Donc ouais, évitons les préjugés du style "java c'est pas fait pour du web" avec tout le respect que j'ai pour toi, tes compétences et l'aide que tu apportes, c'est débile de sortir des trucs comme ça et effectivement ça n'amène à rien de bon.

J'espère sincèrement que tu trouveras un CMS propre qui fait ce que tu veux. Je ne peux pas imaginer que ça n'existe pas.

Édité par Javier

Happiness is a warm puppy

+2 -0

Pour en revenir un peu au sujet de base (même si je suis ravi de voir qu'il y a des défenseurs de Java :p ), ownCloud dispose d'extensions, et il doit y en avoir une pour la gestion de photos.

La vie, c'est comme les mirabelles

+0 -0
Staff

Ah, oui, cet article est vraiment merdiqUE. Chacun ici sait que je n'aime pas le java qui a mon avis, en tant que langage a tous les défauts des langages verbeux mais n'approfondit pas l'expressivité de son propre langage (notons que java 1.8 et même 1.7 vont quand même sur le bon chemin).

Quand je veux un langage verbeux, objet, avec une VM, le miex reste C# à mon avis.

Par contre l'article dit franchement n'importe quoi et surtout balance des chses gratuitement :

For example, Java does not support destructors. This makes good resource management (especially the hallowed RAII pattern) difficult if not impossible. In advanced Java programs, you'll see programmers calling "init" and "deinit" methods explicitly to work around the issue

Nope. Je n'ai jamais utilisé init/deinit, par contre j'ai déjà utilisé les try with ressource, j'ai déjà fait des constructeurs bien sentis, j'ai déjà mis les bonnes interfaces qui signifie qu'on a un truc à faire qui peut prendre du temps et surtout j'ai toujours mis à null une référence dont je n'ai plus besoin pour que le gc découvre que mon objet était à durée de vie courte.

Bref, c'est sûr, on n'utilise pas de RAII, mais on gère un minimum la mémoire quand même.

Nor does Java support copy constructors.

Java ne supporte pas le passage par copie, ni la surcharge d'opérateur, donc pourquoi faire des copyconstructor des first class citizen? Je peux très bien faire un constructeur par copie, mais on préfèrera implémenter clonable, ce qui est d'ailleurs 100 fois plus explicite qu'un constructeur par copie bien magique.

Je n'irai pas plus loin dans la critique (mais j'ai lu). Je n'aime pas java mais faut éviter de dire n'importe quoi quand même.

+0 -0

Par contre Artragis, outre que C# est une copie (pour la base, je me doute que le langage doit avoir pas mal de différences) de Java, est-ce que par VM tu parles de virtual machine ? Parce que C# est compilé. Et est difficilement portable, mono c'est un peu la galère.

La vie, c'est comme les mirabelles

+0 -0
Staff

Parce que C# est compilé. Et est difficilement portable, mono c'est un peu la galère.

C#, tout comme java fonctionne sur une VM. Sauf qu'au lieu de s'appeler JVM elle s'appelle CLR.

Mono est en train de largement s'améliorer depuis que ASP.NET et .NET Core sont devenus open source.

Les différences, même en terme de conception sont de plus en plus importantes car C# est ultra intégré à .NET et en plus il propose une vraie manière de faire de l'asynchrone, alors qu'avec Java c'est un peu casse pied.

De même si Java8/ inclus les lambda, elles ne sont pas "widely spread", à l'opposé, les delegate de C# sont sans cesse utilisées.

+0 -0

il propose une vraie manière de faire de l'asynchrone, alors qu'avec Java c'est un peu casse pied.

Je veux bien plus d'infos là-dessus stp. (ça m'intéresse hein c'est pas ne question rhétorique).

Happiness is a warm puppy

+1 -0
Staff

@Phigger TOut comme java.

ça m'intéresse hein c'est pas ne question rhétorique).

Globalement on a le jeude keyword await/async qui est intégré à à peu près tout, même les delegate. Ce mot te permet de faire soit du multithread (par défaut), soit de l'io asynchrone (il faut lui donner le runner adéquat, ce dernier étant fourni dans l'API standard), ou même un service séquentiel avec fil d'attente orchestrée (exemple utilisation séquencée d'un HDD).

Faudra que je fasse un article à ce propos, en plus ça fera appel à ce que dit spacefox dans ses articles sur les coroutine et asyncio.

Édité par artragis

+0 -0

Oui, enfin perso je dis pré-compilé, histoire que la différence soit faite avec les langages compilés en exécutables binaires ^^ Donc je ne savais pas que le C# suivait le même système

La vie, c'est comme les mirabelles

+0 -0
Staff

Oui, enfin perso je dis pré-compilé, histoire que la différence soit faite avec les langages compilés en exécutables binaires

sauf que le bytecode permet plein de choses qui ont augmenté pas mal les perfs de Java et C# : style la compilation à la volée "Just In Time" (JiT). La compilation est bel et bien réelle, ça sert vraiment à rien de faire une différence entre un langage "pré compilé" et un langage "binaire". C'est plutôt qu'on est dans un "langage avec VM" ou "langage sans VM". Tous les langages de Micro$oft sont à VM, et il faut absoluement bien configurer ton visual studio si tu veux coder en C++ sans la VM derrière (sinon tu as visual C++ et ça devient vite très différent).

+0 -0
Vous devez être connecté pour pouvoir poster un message.
Connexion

Pas encore inscrit ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte