83 votes

Linux préinstallé pour les développeurs Web ?

Quelqu'un connaît-il une image ISO d'une distribution Linux récente destinée aux développeurs de sites Web et présentant une, plusieurs ou toutes les caractéristiques suivantes :

  • Pile LAMP facilement configurée (Apache 2 facilement installé, structure de répertoires de sites virtuels (hébergement), PHP installé, mySQL installé)

  • Installation de Ruby/RoR pour un débutant

  • Mise en place de Subversion pour des dépôts multiples

  • Pare-feu configuré pour fonctionner comme un serveur web (Port 80 ouvert, pas grand chose d'autre)

  • Python et Trac installés et intégrés à Apache (capacité multi-environnements)

Le contexte :

Je dispose d'un nouveau poste de travail puissant et j'aimerais configurer un certain nombre de machines virtuelles pour les tests, le développement et le contrôle des versions, de préférence sous Linux. Les machines ne seront pas exposées au public.

Je voudrais m'épargner autant de travail d'installation et de mise en place que possible - la mise en place de tout ce qui figure dans la liste ci-dessus me coûterait des semaines si je le faisais seul.

Bounty

J'ai dû le mettre de côté pour l'instant en raison d'autres projets plus urgents. Les suggestions faites constituent déjà une liste brillante ; je mets une prime sur la question pour essayer de recueillir le plus de contributions possible, afin que cette question puisse être la référence en la matière pour les générations futures.

J'attribuerai la prime soit sur la base d'un vote populaire, soit sur un coup de tête, à partir de ce qui me semble être la meilleure solution.

42voto

GmonC Points 8978

Sérieusement, je pense que la meilleure chose à faire est de créer le vôtre. Certaines personnes utilisent par exemple Redmine au lieu de Trac. Trouver une VM pré-configurée avec ces installations spécifiques va être difficile.

Donc, ayant comme condition préalable le "créez votre propre", je crois que vous avez les options suivantes :

Utilisez une distribution "VM Aware".


Ubuntu Server me vient à l'esprit : il dispose d'une option permettant d'installer une installation minimale spécifique aux VMs .

Téléchargez l'image ISO du serveur, démarrez-la, appuyez sur F4 sur le premier écran et sélectionnez "Installer une machine virtuelle minimale".

  • Moins de 380 Mo d'empreinte installée
  • Noyau de serveur spécialisé (-virtuel)
  • Optimisé pour VMWare ESX, VMWare Server et KVM Architecture Intel ou AMD x86
  • Mémoire minimale 128MB Non
  • environnement graphique préchargé car il est destiné à l'appliance virtuelle du serveur

IMHO, vous allez passer tout au plus une journée à configurer votre VM selon vos goûts, pas des semaines. L'utilisation d'apt-get va vous faire gagner du temps pour presque tous les paquets de votre liste de fonctionnalités.

...et si vous voulez encore plus de personnalisation, vous pouvez même essayer d'utiliser vmbuilder .

vmbuilder est un script qui permet d'automatiser le processus de création d'une VM prête à l'emploi VM basée sur Ubuntu. Il n'y a pas besoin d'une image CD JeOS. Les hyperviseurs actuellement hyperviseurs actuellement supportés sont KVM, Xen et VMware.

Utilisez une distro bien connue et "dépouillez-la".


Installez un système Debian minimal et réduire certaines fonctionnalités, ou créer une petite image en direct et l'utiliser.

Utilisez Linux From Scratch (LFS) et construire un système uniquement avec les logiciels essentiels


C'est le plus difficile et vous allez y passer beaucoup de temps.

Mais vous serez en mesure d'avoir une distribution vraiment petite et de comprendre comment un système Linux fonctionne vraiment. En comprenant comment tout fonctionne, vous pourrez installer juste ce qui est nécessaire dans votre configuration, et utiliser des binaires plus légers comme Busybox .

Il y a un vieux projet appelé Debian From Scratch (la dernière mise à jour date de 2006, donc je ne sais pas si elle est fiable) qui vise à faire la même chose que LFS mais en utilisant Debian.

(...) est une distribution unique qui vous permet d'installer un système Debian avec presque le même niveau de contrôle que celui que vous obtiendriez avec une installation From Scratch mais avec les avantages de avantages de Debian (facile à mettre à jour et à facile à mettre à jour et à maintenir).

Vous voulez juste une petite solution Linux prête à l'emploi.


Eh bien, vous pouvez essayer Damn Small Linux elle ne fait que 50mb et est basée sur Debian et je crois que c'est la distribution minimale la plus connue ( vous pouvez consulter d'autres distros dans cette liste ). Je ne sais pas comment il se comporterait dans un scénario de développement de serveur Web.

Conseil final


Dans toutes les situations ci-dessus, après avoir configuré, sauvegardez votre VM par défaut pour une utilisation future. Ou mieux, utilisez des snapshots, chacun avec les différences mineures que vous pouvez avoir avec votre installation (attention cependant, contrôler trop de snapshots peut être un peu lourd).

"Je ne veux pas configurer le mien"


Si pour une raison ou une autre vous n'avez pas aimé mes approches ou si vous n'avez pas le temps de suivre mes conseils ("créer votre propre vm"), vous pouvez consulter le site suivant cette question sur ServerFault . Il y a une liste pour un tas d'appareils de différentes distros.

...mais si vous devez en tester plusieurs, pour voir s'ils répondent à vos besoins, pourquoi ne pas utiliser le temps passé avec eux pour créer les vôtres ?

glaçage sur le gâteau : utilisation Vagrant pour gérer vos vms.


Vagrant est un outil permettant de construire et de distribuer des de développement virtualisés.

En fournissant une création et un approvisionnement automatisés de machines virtuelles virtuelles à l'aide de VirtualBox d'Oracle, Vagrant fournit les outils nécessaires pour créer et configurer des environnements virtuels légers, reproductibles et portables. légers, reproductibles et portables.

Cela signifie que Vagrant vous aide à automatiser un grand nombre de choses que vous faites habituellement lors de la création d'une nouvelle VM (ces fonctionnalités sont tirées du site officiel) :

  • Création automatisée de machines virtuelles à l'aide de VirtualBox d'Oracle
  • Approvisionnement automatisé des environnements virtuels à l'aide de Chef, Puppet, ou simplement de scripts shell !
  • Accès SSH complet aux environnements créés
  • Attribuez une IP statique à votre VM, accessible depuis votre machine
  • Transférer les ports vers la machine hôte
  • Les dossiers partagés vous permettent de continuer à utiliser votre propre éditeur.
  • Emballer les environnements dans des boîtes distribuables
  • Démolir complètement l'environnement lorsque vous avez terminé.
  • Reconstruisez facilement un environnement complet à l'aide d'une seule commande.

Je créerais un vm avec la même configuration (enfin, presque la même) que mon serveur de production, afin que certains problèmes de plateforme n'apparaissent pas juste au moment du déploiement.

31voto

erenon Points 9361

Configurer une édition serveur de Debian ou Ubuntu. Facile à mettre en place, et il faut une journée pour installer/configurer tout ce que vous avez énuméré ci-dessus avec des tutoriels, même si vous êtes débutant, et rien n'est bogué.

28voto

Alex Barrett Points 7719

C'est une liste très précise ! Un rapide exercice de mon Google-fu me conduit à Noys qui a les logiciels suivants pré-installés.

  • Apache 2.2
  • MySQL 5.0
  • Administrateur MySQL
  • Navigateur de requêtes MySQL
  • PHP 5.2 avec quelques extensions importantes (PDO, MySQL, PEAR)
  • XDebug
  • NetBeans 6.5
  • Subversion avec intégration de Nautilus
  • Firefox 3.0.7 avec quelques grandes extensions (Firebug, Web Developer Toolbar, Greasemonkey)
  • gFTP
  • GIMP 2.6

Toute distribution disposant d'un bon gestionnaire de paquets devrait cependant prendre en charge une grande partie du travail fastidieux pour vous.

9voto

Steen Points 3427

Essayez de chercher dans le Répertoire des appliances VMWare . Choisissez "Systèmes d'exploitation" et recherchez "LAMP".

7voto

HerbN Points 902

Je n'en connais pas. Je vous suggère de créer votre propre distribution ou image. Si vous le faites, merci de la distribuer.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X