Est-il possible d'héberger un site Web sur le Pi3 avec 1 Go de RAM?

8

Lisez récemment cet article: http://www.makeuseof.com/tag/host-website-raspberry-pi/ où la possibilité d'héberger un site web sur un Pi est discutée. Mais je ne sais pas s'il est capable d'héberger exactement ce que je veux. J'ai un site Web que je suis en train de créer et j'ai pensé que je préférerais héberger le site moi-même plutôt que de payer pour que quelqu'un d'autre l'héberge pour moi. C'est un site Web de base juste pour afficher les coordonnées et mes projets récents (texte et photos). Voici un exemple de l'objectif final: http://brianmaierjr.com/ .

Serait-il possible d'héberger quelque chose comme ça sur un Pi? Quelles sont les contraintes à garder à l'esprit lors de la recherche d'un ordinateur pour héberger ce site?

EDIT: Juste pour plus d'informations, je doute qu'il y aura plus de 100 sessions simultanées à la fois et je ne pense pas que la sécurité ou le trafic soit vraiment un problème. Juste une petite chose à montrer aux employeurs.

EDIT2: Pour des éclaircissements, j'ai fait beaucoup plus de recherches à ce sujet et je suis presque sûr de me diriger vers la direction de Node.JS. Mon expérience est dans le développement .NET et juste au début du mois, j'ai pris une pause de c # et je suis passé à JS. Merci beaucoup pour l'aide des gars. Appréciez vraiment toutes les anecdotes et informations objectives!

J.Doe
la source
OUI, vous pouvez héberger un site internet sur le Pi3 et vous serez surpris de ses capacités. pour plus d'informations, veuillez lire ceci sur framboise: raspberrypi.org/documentation/remote-access/web-server/…
reicros
Les commentaires ne sont pas pour une discussion approfondie; cette conversation a été déplacée vers le chat .
Ghanima
Salut mon pote. Alors, comment avez-vous fini avec ça? : DI vient d'obtenir quelques votes positifs aujourd'hui et a remarqué que vous n'avez jamais sélectionné de réponse. Veuillez aider le taux de conversion de la communauté sur les réponses et sélectionnez celui que vous préférez. J'espère que tout a bien fonctionné!
Piotr Kula

Réponses:

3

100 sessions simultanées sont en fait beaucoup: étant donné qu'un employeur typique passera environ 5 à 10 minutes à parcourir votre site, vous devrez annoncer votre site à des milliers d'employeurs chaque jour pour obtenir autant de trafic.

De manière réaliste, un Raspberry Pi est suffisant pour un tel site. Il sera sensiblement plus lent qu'un site similaire sur un hébergement commercial (pas à cause de la framboise, plutôt parce que votre site ne sera pas soutenu par un CDN), donc vos clients devront attendre quelques secondes supplémentaires avant de commencer les pages charger. Mais ce sera utilisable.

En gros, vous devez vous attendre à ce que jusqu'à 100 Mo de RAM soient consommés par le système et 100 autres par le serveur Web. Le reste sera essentiellement partagé entre le cache disque et les scripts côté serveur.

Dmitry Grigoryev
la source
Dans quelle mesure parlons-nous ici de charger entre les pages? Et qu'est-ce qui cause exactement cette lenteur sinon le PI? Est-ce plus dépendant de ma prise en charge de connexion Internet par le serveur? Ou le matériel du Pi?
J.Doe
@ J.Doe Quand quelqu'un charge Youtube, il obtiendra les données directement du cache de son fournisseur, ou au moins d'un serveur de proximité dans son pays. Lorsque la même personne charge votre site hébergé sur un Pi, les données devront faire un véritable tour du monde entre l'utilisateur, votre Pi et le serveur DNS que vous utilisez pour obtenir votre Pi un nom de domaine. Sauf si vous payez une prime, toutes ces connexions seront lentes. Cela pourrait facilement prendre quelques secondes de retard.
Dmitry Grigoryev
3

Sûr que vous pouvez! Tout dépend de la façon dont vous configurez le Pi. Je peux voir que vous avez déjà de bonnes réponses LAMP qui rampent déjà ... Je suggère fortement de rester à l'écart d'Apache traditionnel PHP complet (CPU & RAM HOGGERS)

Ceci est un fait: au lieu de votre fin avant que vous devez devez utiliser nginx à la place. Il a été conçu pour les appareils embarqués et fonctionne extrêmement bien sur le Pi, en particulier le 3.

L'extrémité arrière est tout à vous mais je n M y H onest O pignon

  • Python est le langage de programmation de Pi. Si vous connaissez Python, utilisez-le. De plus, il y a beaucoup de frameworks en Python pour créer facilement des sites Web.
  • Je suggère Node.JS car il est extrêmement léger mais vous devez l'apprendre. Node.JS a été conçu pour gérer facilement une tonne de connexions.
  • D'un autre côté, je suis moi-même un .NET G33K - J'héberge des sites Web .NET MVC parce que je peux les créer et les déployer rapidement sur ma machine de développement. Hébergés derrière nginx, ils fonctionnent juste f *** king great (je ne peux même pas croire à quel point ils fonctionnent, ça me fait peur) et à partir de 2018 Dotnet Core 2.1+ peut créer des bibliothèques natives qui n'ont pas besoin de SDK supplémentaires installés sur de nombreuses distributions Linux , y compris Raspbian.

En termes de SQL stockage ... Vous pouvez faire MySQL si vous sentez que vous avez besoin d' un moteur de base de données SQL en fonctionnalités , mais vous pouvez vous en sortir avec SqlLite très facilement maintenant un jour aussi.

Piotr Kula
la source
En supposant que l'OP (ou toute autre personne intéressée par la question) n'est pas un développeur javascript / .net / saveur du jour (il / elle n'a pas indiqué AFAICT), il serait utile de recommander des packages et / ou des tutoriels prédéfinis qui aiderait à évaluer.
Shreyas Murali
On ne sait pas quelle saveur de programmation le PO souhaite. Pour répertorier tous les paquets de tout ce que j'ai mentionné, il faudra plus de 2000 pages ... oui. Pas une réponse très concise. J'ai donné d'autres options qui ne sont pas LAMP et un chemin à explorer pour l'OP. Python, Visual Studio et Node.JS ont tous leurs propres référentiels, avec leurs propres gestionnaires de packages et une tonne de tutoriels en ligne ...
Piotr Kula
+1 Pour la grande majorité des choses effectuées sur le RPi, SQLite est suffisant. Je ne sais pas vraiment pourquoi quelqu'un utilise MySQL.
Jacobm001
1
Je dois admettre cependant que l'idée que node.js soit extrêmement léger m'a fait rire. Je veux dire, c'est une langue décente, bien sûr, mais je ne pourrais pas appeler cela extrêmement léger par aucun moyen.
Jacobm001
@ppumkin Woops aurait dû spécifier que ma programmation était en fait avec des applications c #, JS et .NET. Donc, cette recommandation de Node.JS est vraiment intéressante pour moi. Je ne savais pas que c'était possible mais maintenant je veux vraiment essayer ça. Connaissez-vous de bons didacticiels ou un guide pour créer un site Web à l'aide de Node?
J.Doe
1

Oui, vous pouvez certainement le faire. Raspberry Pi 3 est étonnamment capable. J'ai récemment mis en place un site Web auto-hébergé sur un Raspberry Pi 3 exécutant Nginx, PHP5 et MariaDB avec HTTPS et WordPress. La sécurité est le principal problème.En quelques jours, j'ai vu de nombreux pirates essayer de s'introduire sur le serveur. J'ai documenté mon approche complète sur mon site Web https://www.e-tinkers.com (qui est hébergé sur Raspberry Pi). Si vous ne disposez pas d'une bande passante suffisante pour gérer le trafic, vous pouvez également envisager la colocation Raspberry Pi (juste google pour Raspberry Pi colo).

hcheung
la source
1

J'ai hébergé mon blog personnel dans un Raspberry Pi. vous pouvez voir les statistiques de ce petit ordinateur sur cette page

https://www.flopy.es/monitor/status.html

Dans la même framboise j'ai mon blog, ma page web (plus grave), un serveur de messagerie et un cloud personnel réalisé avec Nextcloud.

flop
la source
0

Avertissement ... Cette réponse est probablement un peu tangentielle à votre question, se concentrant sur la façon d'héberger; comme je pense que ce serait d'une certaine aide pour évaluer. Si vous pensez le contraire, faites-moi savoir que je vais le supprimer.

Il y a un tutoriel complet ici sur le site Web de Raspberry Pi qui passe par les étapes de configuration du matériel et du logiciel requis pour héberger automatiquement une installation WordPress sur le PI et la rendre accessible aux clients du réseau local.

Avec un peu plus de configuration (redirection de port, filtrage de paquets, etc.) sur le routeur face à Internet, la même chose devrait être accessible depuis l'extérieur du réseau. Ce bit serait spécifique à la façon dont votre réseau est connecté à Internet.

En bref, ce serait l'une des nombreuses façons de procéder

Le mot magique du jour est LAMP

L -inux - l'une des distributions recommandées est Raspbian qui est Debian adapté pour fonctionner avec le processeur ARM alimentant le PI. vous pouvez l'obtenir d' ici

A -pache - l'un des vénérables serveurs Web

Installer en utilisant sudo apt-get install apache2 -y

Il existe un certain nombre de réglages possibles pour contrôler l'utilisation de la mémoire, comme détaillé ici

Si vous avez l'intention d'utiliser le PI comme sans tête (pas d'affichage), vous pouvez utiliser raspi-configpour ajuster la mémoire allouée au GPU au minimum autorisé (16 Mo je pense) en libérant plus de RAM pour les applications

M -ySQL - l'un des backends de base de données les plus populaires

Semble nécessiter le redémarrage d'Apache sudo service apache2 restart

Installer en utilisant sudo apt-get install mysql-server php5-mysql -y

P -hp - pas ma langue préférée

Installer en utilisant sudo apt-get install php5 libapache2-mod-php5 -y

Téléchargez Wordpress depuis http://wordpress.org/latest.tar.gz et suivez les instructions du tutoriel pour le déplacer dans le bon dossier pour qu'apache le trouve. Avec cela, vous pouvez commencer à vous concentrer sur la création de contenu.

HTH

Shreyas Murali
la source
Pour un petit serveur Web sur un système embarqué avec des ressources limitées, c'est-à-dire une horloge plus lente avec moins de 256 Mo de RAM, etc., je préférerais utiliser une combinaison de Linux, PHP, SQL-Lite et NGinx (LIPSLiNG).
user91822
0

Avez-vous essayé une solution similaire à celle-ci ?

Essayez d'exécuter ceci dans le terminal:

Pour le tutoriel officiel de remote3.it voir le bas de cet article!

Vérifiez la version du système d'exploitation

Tout d'abord, vous devrez déterminer quelle version du système d'exploitation est installée sur votre Pi. Courir:

cat /etc/os-release

Vous devriez voir cette ligne:

VERSION="8 (jessie)"

Cela montre que vous utilisez Jessie framboise! Ou l'étirement fonctionnera aussi!
Si vous utilisez la version Wheezy de Raspbian, ou pour prendre en charge d'autres cartes ARM utilisant Debian (telles que BeagleBone Black et Wandboard), veuillez suivre les instructions d'installation ici .

Installez le package weavedconnectd

Tout d'abord, obtenez les derniers référentiels:

sudo apt-get update

Ensuite, téléchargez le package remot3.it weavedconnectd:

sudo apt-get install weavedconnectd

Exécutez weavedinstaller pour configurer les pièces jointes du service remot3.it

Ensuite, exécutez

sudo weavedinstaller

Vous devriez alors voir une liste d'options, appuyez sur 2, puis appuyez sur enter Puis suivez les instructions à l'écran pour entrer votre e-mail. Remote3.it vous enverra un e-mail avec un code de vérification que vous devez saisir en sélectionnant 3dans ce menu. Après cela, votre compte est actif et vous pouvez ajouter des appareils et des services. Dans ce cas, site web!

Maintenant que vous avez créé un compte, sélectionnez l'option 1, puis connectez-vous. Notez que le mot de passe ne s'affiche pas lorsque vous tapez. Ensuite, comme aucun service n'est encore installé, vous serez invité à entrer le nom du périphérique. Les caractères valides sont les chiffres, les lettres, l'espace, le trait de soulignement et le tiret. Après avoir entré votre nom, appuyez sur 1pour attacher remot3.it à l'un de vos services. Sélectionnez le type de service auquel vous vous connectez, dans ce cas un serveur Web, appuyez sur 2puis appuyez sur Entrée! Il vous sera alors demandé si le port par défaut 80 est le port à utiliser y. Si vous n'êtes pas sur le port 80, mettez n, puis le bon port! Vous pouvez répéter cela avec autant de ports que nécessaire! Sélectionnez un nom pour le service, par exemple Pi-Web Après avoir entré le nom, quelques secondes supplémentaires s'écoulent pendant qu'il est enregistré sur votre compte. Ensuite, vous serez renvoyé au menu Services installés remot3.it. Votre pièce jointe au service Web est maintenant affichée. Appuyez sur 4pour quitter ou enregistrer un nouveau service ou port avec les clés correspondantes! Accédez à https://remote3.it et connectez-vous ! Vous y verrez vos appareils et pourrez accéder au lien fourni dans votre compte remote3.it pour accéder au serveur! Ce lien change régulièrement! Cependant, vous n'avez pas besoin de transférer votre routeur!

Remote3.it Tutorial officiel ici

User98764431
la source
-1

Vous pouvez facilement héberger un site Web sur Raspberry Pi. C'est une expérience amusante et d'apprentissage. J'ai récemment hébergé un blog sur Raspberry Pi. Il est équilibré en charge sur un cluster de 3 Rpi. Si vous êtes intéressé, jetez un œil - https://www.techpint.com

akajain
la source