Ist es möglich, eine Website auf dem Pi3 mit 1 GB RAM zu hosten?

8

Lesen Sie kürzlich diesen Artikel: http://www.makeuseof.com/tag/host-website-raspberry-pi/, in dem die Möglichkeit des Hostings einer Website auf einem Pi erörtert wird. Aber ich bin mir nicht sicher, ob es in der Lage ist, genau das zu hosten, was ich will. Ich habe eine Website, die ich gerade erst erstelle, und ich habe mir überlegt, die Website lieber selbst zu hosten, als dafür zu bezahlen, dass jemand anderes sie für mich hostet. Es ist eine einfache Website, auf der nur Kontaktinformationen und meine letzten Projekte (Text und Bilder) angezeigt werden. Hier ist ein Beispiel für das Endziel: http://brianmaierjr.com/ .

Wäre es möglich, so etwas auf einem Pi zu hosten? Welche Einschränkungen sollte ich beachten, wenn ich nach einem Computer suche, auf dem diese Site gehostet wird?

BEARBEITEN: Nur für weitere Informationen bezweifle ich, dass mehr als 100 Sitzungen gleichzeitig stattfinden werden, und ich denke nicht, dass Sicherheit oder Datenverkehr wirklich ein zu großes Problem darstellen. Nur eine kleine Sache, um Arbeitgebern zu zeigen.

EDIT2: Zur Verdeutlichung habe ich viel mehr Nachforschungen angestellt und bin mir fast sicher, dass ich in Richtung Node.JS gehe. Mein Hintergrund liegt in der .NET-Entwicklung. Erst Anfang dieses Monats habe ich eine Pause von c # eingelegt und bin zu JS gewechselt. Vielen Dank für die Hilfe übrigens Jungs. Schätzen Sie wirklich alle Anekdoten und objektiven Informationen!

J.Doe
quelle
JA, Sie können eine Website auf dem Pi3 hosten und Sie werden von seiner Fähigkeit überrascht sein. Für weitere Informationen lesen Sie bitte diese von Himbeere: raspberrypi.org/documentation/remote-access/web-server/…
reicros
Kommentare sind nicht für eine ausführliche Diskussion gedacht. Dieses Gespräch wurde in den Chat verschoben .
Ghanima
Hallo Kumpel. Wie bist du dazu gekommen? : DI hat heute gerade eine positive Bewertung erhalten und festgestellt, dass Sie nie eine Antwort ausgewählt haben. Bitte helfen Sie der Community-Conversion-Rate bei Antworten und wählen Sie Ihre bevorzugte aus. Hoffe es hat alles gut geklappt!
Piotr Kula

Antworten:

3

100 gleichzeitige Sitzungen sind eigentlich ziemlich viel: Wenn man bedenkt, dass ein typischer Arbeitgeber etwa 5 bis 10 Minuten mit dem Surfen auf Ihrer Website verbringt, müssen Sie Ihre Website täglich bei Tausenden von Arbeitgebern bewerben, um so viel Verkehr zu erhalten.

Realistisch gesehen reicht ein Raspberry Pi für eine solche Site aus. Es ist merklich langsamer als eine ähnliche Site auf einem kommerziellen Hosting (nicht wegen der Himbeere, sondern weil Ihre Site nicht von einem CDN unterstützt wird), sodass Ihre Kunden einige Sekunden warten müssen, bevor die Seiten beginnen Laden. Aber es wird brauchbar sein.

Grob gesagt sollten Sie damit rechnen, dass bis zu 100 MB RAM vom System und weitere 100 vom Webserver verbraucht werden. Der Rest wird im Wesentlichen zwischen dem Festplatten-Cache und den serverseitigen Skripten geteilt.

Dmitry Grigoryev
quelle
Wie langsam sprechen wir hier, um zwischen den Seiten zu laden? Und was genau verursacht diese Langsamkeit, wenn nicht der PI? Ist es mehr abhängig von meiner Internetverbindung, den Server zu unterstützen? Oder die Hardware des Pi?
J.Doe
@ J.Doe Wenn jemand Youtube lädt, erhält er Daten direkt aus dem Cache seines Anbieters oder zumindest von einem Proximity-Server in seinem Land. Wenn dieselbe Person Ihre auf einem Pi gehostete Site lädt, müssen die Daten eine tatsächliche Rundreise um den Globus zwischen dem Benutzer, Ihrem Pi und dem DNS-Server machen, den Sie verwenden, um Ihrem Pi einen Domainnamen zu geben. Wenn Sie keine Prämie zahlen, sind alle diese Verbindungen langsam. Könnte leicht ein paar Sekunden Verzögerung sein.
Dmitry Grigoryev
3

Sicher kannst du! Es hängt alles davon ab, wie Sie den Pi konfigurieren. Ich kann sehen, dass sich bereits gute LAMP-Antworten eingeschlichen haben ... Ich würde dringend empfehlen, sich von Apache-traditionellem Voll-PHP (CPU & RAM HOGGERS) fernzuhalten.

Dies ist eine Tatsache: Statt für Ihre Frontend Sie sollten verwenden müssen nginx statt. Es wurde für eingebettete Geräte entwickelt und läuft sehr gut auf dem Pi, insbesondere auf dem 3.

Das hintere Ende liegt ganz bei Ihnen, aber I n M y H onest O Ritzel

  • Python ist die Programmiersprache von Pi. Wenn Sie Python kennen, verwenden Sie es. Außerdem gibt es in Python viele Frameworks zum einfachen Erstellen von Websites.
  • Ich würde Node.JS vorschlagen, da es extrem leicht ist, aber Sie müssen es lernen. Node.JS wurde entwickelt, um eine Menge Verbindungen einfach zu handhaben.
  • Ich selbst bin ein .NET G33K - ich hoste .NET MVC-Websites, weil ich sie schnell auf meinem Entwicklungscomputer erstellen und bereitstellen kann. Sie werden hinter nginx gehostet und laufen einfach großartig (ich kann nicht glauben, wie großartig sie sind), und ab 2018 kann Dotnet Core 2.1+ native Bibliotheken erstellen, für die auf vielen Linux-Distributionen keine zusätzlichen SDKs installiert werden müssen , einschließlich Raspbian.

In Bezug auf SQL- Speicher ... Sie können MySQL ausführen, wenn Sie das Gefühl haben, eine voll funktionsfähige SQL-Datenbank-Engine zu benötigen, aber Sie können SQLlite jetzt auch ganz einfach verwenden.

Piotr Kula
quelle
Angenommen, das OP (oder jemand anderes, der an der Frage interessiert ist) ist kein Javascript / .net / Flavour des Tagesentwicklers (er / sie hat AFAICT nicht angegeben), wäre es hilfreich, einige vorgefertigte Pakete und / oder Tutorials zu empfehlen, die würde helfen zu bewerten.
Shreyas Murali
Es ist unklar, welche Art von Programmierung das OP wünscht. Um alle Pakete von allem aufzulisten, was ich erwähnt habe, werden mehr als 2000 Seiten benötigt ... ja. Keine sehr prägnante Antwort. Ich gab andere Optionen an, die nicht LAMP sind, und einen Weg, den das OP erkunden kann. Python, Visual Studio und Node.JS haben alle ihre eigenen Repositories, mit ihren eigenen Paketmanagern und einer Menge Online-Tutorials ...
Piotr Kula
+1 Für die überwiegende Mehrheit der auf dem RPi ausgeführten Dinge ist SQLite ausreichend. Ich bin mir nicht sicher, warum jemand MySQL verwendet.
Jacobm001
1
Ich muss allerdings zugeben, dass mich die Idee, dass node.js extrem leicht ist, zum Lachen gebracht hat. Ich meine, es ist eine anständige Sprache, klar, aber ich kann es keineswegs als extrem leicht bezeichnen .
Jacobm001
@ppumkin Woops hätte angeben sollen, dass meine Programmierung tatsächlich mit c # -, JS- und .NET-Anwendungen durchgeführt wurde. Daher ist diese Empfehlung von Node.JS für mich WIRKLICH attraktiv. Ich wusste nicht, dass dies möglich ist, aber jetzt möchte ich es wirklich versuchen. Kennen Sie gute Tutorials oder Anleitungen zum Erstellen einer Website mit Node?
J.Doe
1

Ja, das kannst du definitiv. Raspberry Pi 3 ist überraschend leistungsfähig. Ich habe kürzlich eine selbst gehostete Website auf einem Raspberry Pi 3 mit Nginx, PHP5 und MariaDB mit HTTPS und WordPress erstellt. Sicherheit ist das Hauptproblem. Innerhalb weniger Tage habe ich viele Hacker gesehen, die versucht haben, in den Server einzudringen. Ich habe meinen vollständigen Ansatz auf meiner Website https://www.e-tinkers.com (die auf Raspberry Pi gehostet wird) dokumentiert . Wenn Sie nicht über genügend Bandbreite verfügen, um den Datenverkehr zu verarbeiten, können Sie auch die Raspberry Pi-Colocation in Betracht ziehen (googeln Sie einfach nach Raspberry Pi colo).

hcheung
quelle
1

Ich habe meinen persönlichen Blog in einem Raspberry Pi gehostet. Sie können die Statistiken dieses kleinen Computers auf dieser Seite sehen

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

In derselben Himbeere habe ich mein Blog, meine Webseite (ernsthafter), einen Mailserver und eine persönliche Cloud, die mit Nextcloud erstellt wurde.

Flopy
quelle
0

Haftungsausschluss ... Diese Antwort ist wahrscheinlich etwas tangential zu Ihrer Frage und konzentriert sich auf das Hosting. Ich denke, es wäre hilfreich zu bewerten. Wenn Sie sich anders fühlen, lassen Sie mich wissen, dass ich es entfernen werde.

Hier auf der Himbeer-Pi-Website finden Sie ein vollständiges Tutorial , in dem die Schritte zum Einrichten der Hardware und der erforderlichen Software beschrieben werden, um eine WordPress- Installation auf dem PI selbst zu hosten und für Clients im lokalen Netzwerk zugänglich zu machen.

Mit etwas mehr Konfiguration (Portweiterleitung, Paketfilterung usw.) auf dem Router mit Blick auf das Internet sollte dieselbe von außerhalb des Netzwerks zugänglich sein. Dieses Bit hängt davon ab, wie Ihr Netzwerk mit dem Internet verbunden ist.

Kurz gesagt, dies wäre einer der vielen Wege, dies zu tun

Das Zauberwort des Tages ist LAMP

L- Inux - Eine der empfohlenen Distributionen ist Raspbian, Debian, das für die Arbeit mit dem ARM-Prozessor geeignet ist, der den PI mit Strom versorgt. Sie können es von hier bekommen

A -pache - einer der ehrwürdigen Webserver da draußen

Installieren Sie mit sudo apt-get install apache2 -y

Es gibt eine Reihe von Optimierungen, um die Speichernutzung zu steuern, wie hier beschrieben

Wenn Sie beabsichtigen, den PI als Headless (keine Anzeige) zu verwenden, können Sie raspi-configden der GPU zugewiesenen Speicher auf das minimal zulässige Maß (16 MB, glaube ich) optimieren , um mehr RAM für die Anwendungen freizugeben

M -ySQL - eines der beliebtesten Datenbank-Backends

Scheint, dass Apache neu gestartet werden muss sudo service apache2 restart

Installieren Sie mit sudo apt-get install mysql-server php5-mysql -y

P- PS - nicht meine persönliche Lieblingssprache

Installieren Sie mit sudo apt-get install php5 libapache2-mod-php5 -y

Laden Sie Wordpress von http://wordpress.org/latest.tar.gz herunter und befolgen Sie die Anweisungen im Tutorial, um es in den richtigen Ordner zu verschieben, damit Apache es findet. Damit können Sie sich auf die Erstellung von Inhalten konzentrieren.

HTH

Shreyas Murali
quelle
Für kleine Webserver auf einem eingebetteten System mit begrenzten Ressourcen, dh einem langsameren Takt mit weniger als 256 MB RAM usw., würde ich eine Kombination aus Linux, PHP, SQL-Lite und NGinx (LIPSLiNG) bevorzugen.
user91822
0

Haben Sie eine Lösung ähnlich wie versucht , diese ?

Versuchen Sie dies im Terminal auszuführen:

Das offizielle Tutorial von remote3.it finden Sie am Ende dieses Beitrags!

Überprüfen Sie die Betriebssystemversion

Zunächst müssen Sie feststellen, welche Version des Betriebssystems auf Ihrem Pi installiert ist. Lauf:

cat /etc/os-release

Sie sollten diese Zeile sehen:

VERSION="8 (jessie)"

Dies zeigt, dass Sie Himbeer-Pi Jessie verwenden! Oder Stretch funktioniert auch!
Wenn Sie die Wheezy-Version von Raspbian verwenden oder andere ARM-Boards mit Debian unterstützen (z. B. BeagleBone Black und Wandboard), befolgen Sie bitte die Installationsanweisungen hier .

Installieren Sie das Weavedconnectd-Paket

Holen Sie sich zunächst die neuesten Repositorys:

sudo apt-get update

Laden Sie als Nächstes das Paket remot3.it weavedconnectd herunter:

sudo apt-get install weavedconnectd

Führen Sie weavedinstaller aus, um Remot3.it-Dienstanhänge zu konfigurieren

Als nächstes laufen

sudo weavedinstaller

Sie sollten dann eine Liste der Optionen anzeigen, drücken 2und dann drücken. enter Folgen Sie dann den Anweisungen auf dem Bildschirm, um Ihre E-Mail einzugeben. Remote3.it sendet Ihnen eine E-Mail mit einem Bestätigungscode, den Sie durch Auswahl 3aus diesem Menü eingeben müssen . Danach ist Ihr Konto aktiv und Sie können Geräte und Dienste hinzufügen. In diesem Fall Website!

Nachdem Sie ein Konto erstellt haben, wählen Sie die Option 1und melden Sie sich an. Beachten Sie, dass das Kennwort während der Eingabe nicht angezeigt wird. Da noch keine Dienste installiert sind, werden Sie aufgefordert, den Gerätenamen einzugeben. Gültige Zeichen sind Zahlen, Buchstaben, Leerzeichen, Unterstriche und Bindestriche. Nachdem Sie Ihren Namen eingegeben haben, 1drücken Sie, um remot3.it an einen Ihrer Dienste anzuhängen. Wählen Sie die Art des Dienstes aus, zu dem Sie eine Verbindung herstellen, in diesem Fall einen Webserver. Drücken Sie 2dann die Eingabetaste! Sie werden dann gefragt, ob der Standardport 80 der zu verwendende Port ist. yWenn Sie nicht auf Port 80 sind, setzen Sie nund dann den richtigen Port! Sie können dies mit so vielen Ports wie nötig wiederholen! Wählen Sie einen Namen für den Dienst aus, z. B. Pi-Web. Nachdem Sie den Namen eingegeben haben, vergehen einige Sekunden, bis er in Ihrem Konto registriert ist. Als Nächstes kehren Sie zum Menü Installierte remot3.it-Dienste zurück. Jetzt wird Ihr Anhang zum Webdienst angezeigt. Drücken Sie 4, um einen neuen Dienst oder Port mit den entsprechenden Tasten zu beenden oder zu registrieren! Navigieren Sie zu https://remote3.it und melden Sie sich an ! Dort sehen Sie Ihre Geräte und können auf den in Ihrem remote3.it-Konto angegebenen Link zugreifen, um auf den Server zuzugreifen! Dieser Link ändert sich regelmäßig! Sie müssen Ihren Router jedoch nicht portieren!

Remote3.it Offizielles Tutorial hier

User98764431
quelle
-1

Sie können ganz einfach eine Website auf Himbeer-Pi hosten. Es macht Spaß und Lernerfahrung. Ich habe kürzlich einen Blog über Himbeer-Pi gehostet. Es ist auf einem Cluster von 3 Rpi lastausgeglichen. Wenn Sie daran interessiert sind, schauen Sie - https://www.techpint.com

akajain
quelle