Objectif
Objectif: Obtenez un environnement de développement ColdFusion opérationnel sur un Raspberry Pi
Équipement: un Raspberry Pi modèle B
Il est temps de réaliser ce tutoriel: probablement quelques heures si vous connaissez votre chemin!
Remarque: je fais cela avec une révision 2 256 Mo Pi, juste pour voir si c’est viable!
Contexte
Je suis un programmeur ColdFusion et j’ai travaillé à faire fonctionner ColdFusion sur le Raspberry Pi dans l’espoir que ce sera a) amusant; b) me donner un itinéraire pour retourner au travail après un congé de maladie; et c) donnez-moi un moyen d’utiliser
Si vous ne savez pas ce qu’est ColdFusion, voici ce que dit Adobe à ce sujet:
ColdFusion est un serveur d’environnement de script rapide pour la création d’applications Internet dynamiques. ColdFusion Markup Language (CFML) est un langage de script basé sur des balises facile à apprendre, avec une connectivité aux données d’entreprise et de puissantes capacités intégrées de recherche et de création de graphiques. ColdFusion permet aux développeurs de créer et de déployer facilement des sites Web dynamiques, des systèmes de publication de contenu, des applications en libre-service, des sites de commerce, etc. Les pages ColdFusion sont des fichiers de texte brut que vous utilisez pour créer des applications Web. Vous pouvez créer vos applications ColdFusion en écrivant tout le code manuellement ou en utilisant des assistants (fournis avec certains éditeurs) pour générer la majorité du code pour vous.
Pour en parler un peu moins en marketing, voici mon résumé plus convivial:
ColdFusion vous permet de développer des applications Web très rapidement. Cela ressemble un peu au HTML, donc si vous avez une idée fondamentale du fonctionnement de la programmation et que vous pouvez consulter une page HTML sans paniquer, ColdFusion peut être le langage qu’il vous faut. Voici un exemple de ColdFusion – il exécute une boucle de programmation 5 fois et imprime quelque chose ce nombre de fois:
Bonjour le monde # i #
Quelques points à noter:
- Les balises ColdFusion ressemblent à du HTML et commencent par
- Vous pouvez afficher la valeur de «i» (qui est le nombre actuel d’exécutions de notre boucle) en utilisant
et les #s. - Vous pouvez y mélanger du HTML (notez la balise
).
ColdFusion est un langage remarquablement simple à utiliser. Une fois que vous avez fait quelques exemples de base, vous pouvez créer un site Web basé sur une base de données en quelques heures. Il se lie bien aux bases de données SQL (et autres), y compris MySQL.
Railo est une version open-source de ColdFusion, ce qui signifie que vous pouvez théoriquement créer un Pile de style LAMP en utilisant ColdFusion au lieu de PHP.
Pour plus d’informations sur la prise en main de ColdFusion, jetez un œil à ce guide sur QuackIt. Sinon, contactez-moi en ajoutant un commentaire à mon blog et je vous aiderai à démarrer.
Faites-le fonctionner
Assez des préliminaires, allons-y.
Exécuter la version Adobe de ColdFusion elle-même sur le Pi est à peu près un non-démarreur car il n’y a pas de version ARM et certainement pas de version open-source que je puisse compiler. Donc, à la place, je vais pour Railo qui est un environnement CFML open-source. L’avantage de Railo est qu’il peut être installé pour s’exécuter via le Java Runtime Environment (JRE) que vous avez installé. Donc, cela signifie que l’installation de Railo ColdFusion est simplement une question de faire fonctionner le JRE.
Je vous recommande de faire cette procédure avec votre câble Ethernet branché, plutôt que WiFi, car les packages d’installation sont assez volumineux. Je ne peux pas non plus recommander d’utiliser quelque chose de plus petit qu’une carte SD de 4 Go pour cela.
Première installation
Tout d’abord, vous devez installer le JRE pour le Raspberry Pi. Maintenant, je crois que vous pouvez installez Java 7 sur le Pi, mais c’est un une douleur royale dans le cul, donc je vais passer à la version 6. Cela dit, J’ai découvert que vous devez installer quelque chose qui ressemble à 7 mais est en fait la version 6! Quoi qu’il en soit… il s’agit d’une installation d’environ 70 Mo, en fonction des paquets associés que vous avez déjà installés.
sudo apt-get –no-install-recommande d’installer openjdk-7-jdk
Vous devez maintenant télécharger le serveur Railo pour Linux mais sans pour autant l’environnement d’exécution Java. Cela signifie que Railo utilisera le JRE précédemment installé. Aller au Télécharger Railo page et obtenez le package Railo Express qui ne pas inclure le JRE. La version Express comprend son propre serveur Web autonome. Ce n’est pas exactement un produit de niveau entreprise, mais il conviendra parfaitement à mes besoins mono-utilisateur.
Une fois que vous avez le fichier tar.gz, renommez-le en quelque chose comme railo.tgz et exécutez la commande suivante:
tar -xvf railo.tgz
Cela extraira les fichiers d’exécution de Railo. Vous êtes obligé d’obtenir un dossier ou deux, alors changez de répertoire et recherchez un fichier appelé ‘start’.
Exécutez la commande suivante:
./début &
Cela exécutera le serveur en arrière-plan. Vous obtiendrez toute la sortie du serveur apparaissant à l’écran, mais l’exécuter en arrière-plan signifie que si vous perdez la connexion à votre Pi, le serveur continuera à fonctionner.
Gardez à l’esprit que Railo met du temps à se présenter. Ignorez toutes les erreurs capables SLF4J. Je ne sais toujours pas ce que cela signifie. Ce que vous recherchez, ce sont des morceaux étiquetés CONTEXTE WEB contenant des lignes sur la configuration, la racine Web, le hachage et l’étiquette.
Testez-le
Maintenant, vous devriez le tester. Par défaut, il fonctionnera sur le port 8888. Port étrange, vous pourriez dire, mais il y a un problème avec Railo / Jetty fonctionnant sur le port 80. J’aborderai ceci plus tard. Donc, disons que l’adresse IP de votre Pi est 192.168.1.95, vous devez entrer l’adresse URL de votre navigateur:
http://192.168.1.95:8888
Tu devrait obtenir un écran de «bienvenue» Railo traditionnel. Si vous ne le faites pas, arrêtez maintenant et commentez ce billet de blog pour obtenir de l’aide!
La mise en réseau
Vous devez modifier un fichier sur le Pi pour vous assurer de conserver une adresse IP statique. Ceci est vital si vous souhaitez ouvrir votre site au monde et que votre routeur aura probablement besoin de connaître votre adresse IP et qu’elle ne change pas. Pour ce faire, éditez le fichier / etc / network / interfaces et éditez-le à partir de:
iface eth0 inet dhcp
à:
iface eth0 inet statique
adresse 192.168.1.95
masque de réseau 255.255.255.0
passerelle 192.168.1.1
Exécutez ensuite la commande suivante pour redémarrer les paramètres réseau
redémarrage du réseau du service sudo
Maintenant, cela suppose que vous allez laisser votre Pi branché sur le routeur via un câble, donc si vous utilisez le WiFi, essayez de comprendre ce que vous faites. Tu pourrait trouvent que le réseautage ne se fait pas tout seul. Si ce n’est pas le cas, redémarrez simplement votre Pi. Comme toujours, pour tout problème, merci de commenter!
Vous devrez maintenant mettre à jour votre fichier ‘hosts’ pour qu’il pointe vers votre Pi. Sous Linux, il s’agit de / etc / hosts. Sous Windows, ce fichier est c: windowssystem32driversetchosts. Modifiez le fichier et faites pointer sample.local sur l’adresse IP de votre Pi. Veuillez commenter ce message si vous ne savez pas ce que vous faites, mais n’oubliez pas que Google est votre ami!
Mon premier site Web Railo
Maintenant, évidemment, afficher le site par défaut ne sera pas suffisant. Vous devez obtenir votre installation Railo pour afficher le site qui tu le veux.
Tout d’abord, exécutez la commande «stop» pour que le serveur Railo / Jetty s’arrête car vous allez changer sa configuration et il aura de toute façon besoin d’un redémarrage:
./Arrêtez
Après un certain temps, vous obtiendrez quelque chose comme:
[1]+ Terminé ./start
Cela signifie simplement que Railo a démissionné avec succès.
Nous allons modifier certains fichiers maintenant. Vous pouvez utiliser l’éditeur de votre choix. J’utilise ‘vi’ (parce que je suis une personne Unix de la vieille école) mais je vous suggère d’utiliser ‘nano’ si vous n’êtes pas habitué aux excentricités de vi.
Tout d’abord, vous ne voulez pas que Railo utilise toute la mémoire du Pi, alors éditez le fichier «start» et changez les paramètres -Xms et -Xmx en 128M (si vous avez un Pi de 256 Mo ou 256M si vous avez un 512 Mo ).
Changez de répertoire et allez dans le dossier «contextes».
Vous devez créer un nouveau fichier «contextuel». Un contexte est, essentiellement, la définition d’un site Web. Je ne sais pas pourquoi on les appelle contextes et non vraiment se soucier. Nous allons créer un site appelé «sample.local»
Voici un exemple de fichier de contexte pour sample.local avec tous les commentaires supprimés. Si ce qu’il fait n’est pas clair, n’hésitez pas à poser des questions. Ce fichier s’appelle sample.local.xml
xml version = ”1.0 ″ encoding =” ISO-8859-1 ″?>
Ensuite, vous allez créer un dossier pour l’application Web. Accédez au répertoire railo webapps, puis créez votre dossier appelé «sample.local».
Allez dans ce dossier et créez un nouveau fichier appelé «index.cfm». Il s’agit d’un simple script ColdFusion qui, surprise, imprime simplement quelque chose à l’écran! Voici ce qu’il faut y mettre:
Bonjour tout le monde! # cgi.server_name #
Maintenant, remontez quelques répertoires et exécutez à nouveau ./start.
Cette fois, vous devriez voir votre nouveau site Web à venir. Le démarrage du serveur créera un dossier WEB-INF dans votre dossier webapps et le remplira avec une série de scripts d’interface d’administration. Il n’a besoin de le faire qu’une seule fois. Vous avez juste besoin d’attendre qu’il cesse de cracher la sortie à l’écran, normalement après avoir créé le script flex-services.
La prochaine fois que vous démarrez le serveur, vous verrez juste un morceau de CONTEXTE WEB au lieu de tous les éléments WEB-INF.
Maintenant, dans votre navigateur, vous devriez pouvoir accéder à:
http: //sample.local: 8888
Et tu devrais voir
Bonjour le monde! sample.local
Cela montre que la partie ColdFusion fonctionne car «sample.local» est la valeur de la variable cgi.server_name. (Voir la documentation ColdFusion pour en savoir plus sur la «portée» CGI).
La dernière étape est de faire en sorte que le serveur réponde sur le port 80. Pas besoin d’arrêter le serveur pour cela car nous allons «acheminer» le port HTTP (80) vers le port de notre site (8888). Exécutez la commande suivante:
/ sbin / iptables -t nat -I PREROUTING -p tcp –dport 80 -j REDIRECT – vers le port 8888
Vous devriez maintenant pouvoir aller à
http: //sample.local
Et voir la même page!
Vous avez maintenant un serveur ColdFusion fonctionnel! Yay!
Conclusion
Pour tout problème, merci de me contacter via le blog.
Mes remerciements vont aux personnes qui ont écrit des tutoriels précédents, dont beaucoup se concentraient sur le fonctionnement de la version non express de Railo. J’ai décidé d’emprunter la voie la plus facile.
Et après? Eh bien, installer MySQL et le faire fonctionner avec Railo, bien sûr!
