Hur jag satte upp en webbplats på min Raspberry Pi på en helg

- Du Behöver Inget Senaste Pi för att Hosta Din Webbplats
- Docker Är Din Basis för Verksamhet
- Välj Ut Din Domännamn
- Ställ In Dynamisk DNS för Din Nya Domän
- Nginx Proxy Manager Hanterar Din Webbplats Routing och SSL-certifikat
- Ghost Är den Bästa Börjar Webbplats Plattformen
- Se till att Port Forwarding Är Konfigurerat på Din Router
- FAQ: Viktiga frågor och svar
Lär dig enkelt hur du hostar din egen webbplats på en Raspberry Pi, oavsett modell, och kom igång med Docker och Ghost för en smidig upplevelse.
Vill du starta din egen webbplats utan att betala någon annan för att hosta den? Du har tur! Det är faktiskt enkelt att hosta en webbplats på en Raspberry Pi, och du kan ha din sida uppe och igång redan den här helgen.
Du Behöver Inget Senaste Pi för att Hosta Din Webbplats
Även om du kanske tror att du behöver en Raspberry Pi 5 för att köra en webbplats, kan du faktiskt klara dig med att hosta på ett mycket äldre system.
Personligen har jag en Pi 3B installerad i mitt nätverksstack som webbhost. Även om den definitivt inte är den snabbaste, hanterade den lätt min Ghost-blogg. Men en Pi 4 skulle troligtvis vara ett bättre alternativ eftersom den har lite mer kraft för att starta saker snabbare. Egentligen är vilken generation av Raspberry Pi som helst (utanför Zero-linjen) perfekt för att hosta en liten webbplats.
Om du vill uppgradera till en större webbplats eller har kapacitet för tusentals samtidiga användare på sidan, behöver du mer kraft. Men för något litet som precis har startat kommer nästan vilken Pi som helst att fungera.
Docker Är Din Basis för Verksamhet
Docker kommer att hantera hela webbplatsen och alla tjänster på din Raspberry Pi. Tack och lov är det rätt enkelt att installera.
Jag antar att du börjar med en standard Raspberry Pi som kör Raspberry Pi OS, eftersom det är vad jag rekommenderar för webbserveruppgifter på din Pi.
För att komma igång, börjar du med att installera Docker på din Raspberry Pi, vilket är ganska okomplicerat. Följ helt enkelt Debians installationsanvisningar för Docker, och du kommer vara igång på nolltid.
Därefter rekommenderar jag att du installerar Portainer. Jag föredrar personligen att köra Portainer för mina Docker-värdar eftersom det gör det lättare att hantera, men du kan hoppa över det här steget om du vill hålla dig till traditionell Docker Compose via kommandoraden.
För att faktiskt driftsätta din webbplats har jag byggt en praktisk Docker Compose-fil som har allt du behöver i den. Compose-filen kommer att driftsätta Nginx Proxy Manager, ddclient, Ghost och en MySQL-databas för Ghost att använda, med all konfigurering utanför dina egna API-nycklar eller lösenord automatiskt.
Det finns några viktiga saker som behöver modifieras i Docker Compose-filen för att den ska fungera, vilket kommer att förklaras när jag går igenom artikeln.
Välj Ut Din Domännamn
Innan du faktiskt driftsätter din webbplats eller Docker Compose-filen behöver du välja ut en domän, om du inte redan har gjort det.
Det finns många domänregistratorer där ute, men den jag uteslutande använder nuförtiden är Cloudflare. Jag brukade använda Google Domains, och även prova Namecheap när Google Domains stängde ner. Men jag fastnade för Cloudflare av flera anledningar—en av dem är den gratis dynamiska DNS-tjänst som den erbjuder.
Så, gå över till Cloudflare och skaffa den domän du har haft ögonen på. Eller, om du redan har en domän, fungerar det också!
Ställ In Dynamisk DNS för Din Nya Domän
Den domän du har behöver stödja dynamisk DNS. Det dynamiska DNS gör är att automatiskt uppdatera din domäns IP-adress om din IP-adress ändras.
Beroende på vem din internetleverantör är kan din IP-adress kanske inte ändras på flera år (som min på AT&T Fiber), eller så kan den ändras dagligen (som Straight Talks 5G heminternet). Oavsett vem din ISP är, vill du ha en dynamisk DNS-inställning driftsatt.
Så här fungerar det: ett program körs på en dator eller server i ditt hem och ansluter till din domänregistrators API, och pushar din hem-IP-adress som en DNS-post för din domän varje gång den ändras.
Cloudflare stöder detta inbyggt genom sin zonbaserade redigerings-API. För detta har jag inkluderat ddclient Docker-container i Docker Compose-filen för att få din webbplats igång. Men ddclient-containern fungerar också med ett antal andra domänleverantörer, så om du inte...
använd Cloudflare, kontrollera om din är listad.
Att konfigurera ddclient är ganska enkelt. Börja med att välja domänen i Cloudflare och klicka sedan på "Hämta dina API-token" längst ner till höger på skärmen.
På sidan som dyker upp, skapa en ny API-token som kan redigera zone DNS för den domän du vill uppdatera. Detta ger dig API-keyen som du sedan skriver in i ddclient.conf-filen. Jag har tillhandahållit en provfil för dig att använda på min GitHub.
Inuti ddclient.conf-filen lägger du också till din domän och eventuella poster du vill att den ska uppdatera. Som standard uppdaterar den endast @-posten på din domän, vilket är roten (så din-domän.com). Du kan dock också lägga till andra subdomäner här som du kanske vill använda, såsom www, blogg, butik, eller något annat.
Nginx Proxy Manager Hanterar Din Webbplats Routing och SSL-certifikat
Nginx Proxy Manager är hur du kommer att hantera routing av webtrafik till Ghost Docker-containern.
När Nginx Proxy Manager är distribuerad, lägger du helt enkelt till en ny proxy-värd med den domän du vill ha, IP-adressen för din Raspberry Pi och porten som Ghost kör på. Port 2368 är standard.
Var noga med att klicka över till SSL-fliken och generera ett nytt SSL-certifikat för din webbplats också. Detta är avgörande för att erbjuda säker browsing till dina besökare.
Ghost Är den Bästa Börjar Webbplats Plattformen
Även om det finns många blogg- och webbplatsplattformar där ute, rekommenderar jag starkt att börja med Ghost. Det är lätt, enkelt att distribuera och lätt att använda. Jag har byggt många webbplatser genom åren, och Ghost är min personliga favorit nu.
Ghost använder Markdown-språket för att skriva både sidor och inlägg, och detta är en anledning till att jag verkligen tycker om att använda det. Du behöver inte använda Markdown, eftersom det är möjligt att formatera inlägg in-line. Men det är bara snabbare att skriva ## om du vill ha en H2-rubrik, och så vidare.
Ghost är också extremt lätt och snabbt. Det finns inte många plugins som tynger ner din webbplats som med andra plattformar, och det är verkligen utformat för att göra en sak och göra det bra: vara en webbplats. Det finns ingen e-handelsdel i det, och du kan inte göra Ghost till ett forum.
Men det finns en sak som Ghost gör annorlunda som verkligen får det att lysa: medlemskap. Ghost är utformat för att vara en blogg eller webbplats, men också en medlemssajt. Du kan ställa in det med Stripe och erbjuda olika medlemsnivåer för att öka din prenumerantbas. Tänk på det som Substack eller Patreon, men hostat på din egen server.
Detta är en av anledningarna till att jag älskar Ghost. Möjligheten för prenumerationer finns om du vill ha den, men det är inte ett krav om du inte behöver den. Personligen bygger jag två webbplatser som kommer att utnyttja medlemsprenumerationsdelen av Ghost, och jag tror att det är en stor styrka för plattformen.
Innan du slutför din stack och distribuerar din server, behöver du dock göra några sista-minuten justeringar till Compose-filen.
Börja med att uppdatera URL-miljövariabeln för ghost-server containern så att den blir URL:en för din webbplats. Du kommer också vilja generera ett faktiskt säkert databaslösenord och skriva in det både i ghost-server och ghost-db containrarna.
När du har fixat upp din ddclient.conf-fil och uppdaterat Docker Compose-filen med information om din Ghost-webbplats och databas är du redo att gå!
Jag vill säga att denna del kan ta lite tid. Jag distribuerade min Ghost-sajt på min Raspberry Pi 3 B, och det tog ungefär 15 till 20 minuter innan den var helt igång. MySQL-databasen tog särskilt lite tid att starta fullt och vara klar. Så, ge det lite tid när du distribuerar det, och använd den tiden för att slutföra några saker i ditt nätverk.
Se till att Port Forwarding Är Konfigurerat på Din Router
För att kunna få tillgång till din webbplats från utanför ditt lokala nätverk, måste du öppna några portar på din router.
För att få tillgång till din nya självhostade webbplats, kommer vi att fokusera på två portar: 80 och 443. Exakt hur du öppnar dem.
Portar varierar från router till router, och beroende på din ISP kanske det inte är möjligt.
Men när du väl är i området för port vidarebefordran på din router, här är vad du ska göra.
Ställ in extern port 80 att vidarebefordra till intern port 8080, och extern port 443 att vidarebefordra till intern port 4443. Dessa två portar används av Nginx Proxy Manager, och detta är hur du faktiskt kommer att kunna nå din webbplats utanför ditt lokala nätverk.
Det är allt! Om du har följt denna guide, bör din webbplats nu vara live! Vid det här laget vill du gå igenom och börja anpassa Ghost-temat, bygga ut dina sidor och tänka ut dina prenumerationer—om det är något du är intresserad av att göra.
Nu, kolla in dessa sju Docker-containrar som driver mitt hemm nätverk. Om du hostar din egen webbplats, är en av mina favorit tjänster att ha distribuerad på mitt nätverk Uptime-Kuma, eftersom det kan hjälpa till att övervaka tillgängligheten av din webbplats utan att betala någon annan för att övervaka den åt dig.
FAQ: Viktiga frågor och svar
Kan man surfa på webben med en Raspberry Pi?
Ja, det går bra att surfa på webben med en Raspberry Pi. För att göra detta behöver du först ansluta din enhet till internet. Här är hur du går tillväga:
- Anslut till nätverket:
- - Om du inte anslöt en ethernetkabel eller WiFi under installationen kan du göra det nu.
- Klicka på ikonen med röda krysset i skärmens övre högra hörn.
- Välj ditt nätverk från rullgardinsmenyn.
- Webbläsare:
- Raspberry Pi har stöd för webbläsare som Chromium och Firefox som går att installera via Raspberry Pi OS.
- Prestanda:
- För enklare webbsurfing fungerar Raspberry Pi bra, men det kan vara lite segt för mer krävande webbplatser eller videostreaming. Att surfa på webben med en Raspberry Pi är både möjligt och praktiskt för grundläggande användning.
Kan en Raspberry Pi Pico vara värd för en webbplats?
Ja, en Raspberry Pi Pico kan vara värd för en webbplats, särskilt med hjälp av Raspberry Pi Pico W. Här är några viktiga punkter att överväga:
- -
Webbserverfunktionalitet
- : Med Raspberry Pi Pico W kan du installera en webbserver som hanterar HTTP-förfrågningar och skickar HTML-sidor till en klientwebbläsare.
- Utveckling och testning: Innan du lanserar webbplatsen kan du testa den på din dator för att säkerställa att allt fungerar som det ska.
- Resurser och begränsningar: Eftersom Raspberry Pi Pico är en mikrocontroller med begränsade resurser, kan den vara mer lämplig för enklare webbplatser eller applikationer snarare än tunga webbapplikationer.
- Användningsområden: En enklare webbplats för IoT-projekt, interaktiva sensorer eller en personlig projektportfölj kan vara idealiskt för denna plattform. Sammanfattningsvis är det möjligt, men med vissa begränsningar beroende på webbplatsens komplexitet.
Kan jag köra en webbläsare på Raspberry Pi?
Ja, det är absolut möjligt att köra en webbläsare på Raspberry Pi. Här är hur det fungerar:
- - Installera Raspbian Buster: Ladda ner och installera den fullständiga versionen av operativsystemet.
- Webbläsaren är förinstallerad: Chromium, en populär webbläsare, ingår redan och är redo att användas direkt efter installationen. Det är enkelt att komma igång och erbjuder en användarvänlig upplevelse på din Raspberry Pi.
Kan vi konfigurera Raspberry Pi som en webbserver?
Introduktion: Förvandla din Raspberry Pi till en personlig webbserver. Ja, du kan konfigurera en Raspberry Pi som en webbserver. Genom att använda LAMP-stack, som står för Linux, Apache, MySQL och PHP, kan du enkelt köra en dynamisk HTML-webbsida. Följ dessa steg för att göra det:
- Installera Operativsystem: Ladda ner och installera ett lämpligt operativsystem som Raspbian på din Raspberry Pi.
- Uppdatera Systemet: Kör kommandona: bash sudo apt update sudo apt upgrade
- Installera Apache: Installera webbservern med: bash sudo apt install apache2
- Installera MySQL: För att hantera databaser, installera MySQL-servern: bash sudo apt install mysql-server
- Installera PHP: För att bearbeta PHP-skript, använd: bash sudo apt install php libapache2-mod-php php-mysql
- Testa Installation: Skapa en PHP-fil i
/var/www/html/för att verifiera installationen: bash echo '<?php phpinfo(); ?>' | sudo tee /var/www/html/info.php - Öppna Webbläsare: Gå till
http://<din-raspberry-pi-ip>/info.phpför att se PHP-informationen. Genom att följa dessa steg kan du effektivt använda din Raspberry Pi som en personlig webbserver, redo att hantera webbprojekt och applikationer.
Nu när du har läst klart Hur jag satte upp en webbplats på min Raspberry Pi på en helg, inbjuder vi dig att utforska kategorin Linux ytterligare. Där hittar du fler intressanta artiklar som kommer att utöka dina kunskaper och hålla dig informerad. Sluta inte läsa och upptäcka mer!

Lämna ett svar