Jak nainstalovat Thelia 2.3 na Debian 9
Používáte jiný systém? Thelia je open source nástroj pro vytváření webových stránek pro e-business a správu online obsahu napsaného v PHP. Zdrojový kód Thelia i
V tomto tutoriálu nastavíme webový server s reverzním proxy. CMS, který budeme používat, je Keystone.js, dobře známý framework webových aplikací založený na Express.js. Reverzní proxy, kterou budeme používat, je Nginx, což je bezplatný a open source reverzní proxy server a také HTTP server. Databáze, kterou budeme používat, je MongoDB, databáze dokumentů NoSQL. To bude vyžadovat, abyste měli nastavenou doménu se záznamy. Pokud tuto sadu nemáte, pokračujte a postarejte se o to a vraťte se k tomuto návodu.
Nejprve nainstalujeme Node.js, což je interpret Javascript založený na Javascript engine Chrome V8.
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt-get install -y build-essential
Dále nainstalujeme Nginx, náš reverzní proxy.
sudo apt update
sudo apt install nginx
Tím se aktualizují seznamy balíčků a nainstaluje se Nginx. Po dokončení instalace nastavíme projekt našeho uzlu.
Vytvořte náš projekt uzlu. Chcete-li to provést, jednoduše vytvořte novou složku.
mkdir website
Poté vytvoříme náš package.json
soubor. Chcete-li to provést, jednoduše spusťte npm init
svůj terminál, vyplňte pole a yes
potvrďte odpověď „ “. Jakmile vytvoříte package.json
soubor, nainstalujeme následující moduly uzlů.
sudo npm install -g generator-keystone
sudo npm install -g yo
Po dokončení stahování spusťte následující.
yo keystone
Vyplňte požadovaná pole. To vás požádat, aby project name
se template engine
, email
na ovládacím panelu, a tak dále. Pokud nevíte, co vybrat, budou výchozí hodnoty v pořádku. Poté, co nakonfigurujete nastavení keystone, můžeme otestovat, zda náš server běží, zadáním node keystone
a spuštěním vaší aplikace. Ve výchozím nastavení bude vaše aplikace spuštěna na localhost
, na portu 3000
. Všimněte si, že pokud nemáte nainstalovaný MongoDB, databáze pro vás nebude dostupná hned. Jak jej nainstalovat se dozvíte později v tutoriálu.
Zde je základní rozložení adresáře pro Keystone.js:
/lib
- Zde budete ukládat své vlastní knihovny a další kód.
/models
- Zde budete ukládat databázové modely vaší aplikace. KeystoneJS používá MongoDB jako poskytovatele databáze.
/public
- Zde budou uloženy vaše statické soubory (CSS, JS, obrázky atd.).
/routes/api
- Zde budou uloženy řadiče API vaší aplikace.
/routes.views
- Zde budou uloženy ovladače zobrazení aplikací.
/templates
- Zde budou uloženy všechny soubory šablon vaší aplikace.
/updates
- Zde budou uloženy vaše migrační skripty.
package.json
- Toto je váš konfigurační soubor npm, který pro nás generátor vygeneroval.
keystone.js
- Náš hlavní startovací soubor, spustíme jej při spuštění webu.
Jak již bylo zmíněno, naše databáze, kterou budeme používat, je MongoDB, což je spolehlivá NoSQL databáze orientovaná na dokumenty. Pokud již máte MongoDB nainstalovaný, můžete tuto část přeskočit. Pokud ne, zde je návod, jak jej nainstalovat na Ubuntu 16.04.
Importujte veřejný klíč použitý pro balíček mongoDB.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 0C49F3730359A14518585931BC711F9BA15703C6
Vytvořte soubor seznamu použitý k instalaci balíčku.
echo "deb [ arch=amd64,arm64 ] http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.4.list
Aktualizujte seznamy balíčků pomocí apt
.
sudo apt update
Nakonec nainstalujte MongoDB.
sudo apt install mongodb-org -y
Po dokončení této instalace spusťte MongoDB.
sudo service mongod start
Tím se spustí proces MongoDB na portu 27017
.
MongoDB se bude používat v celé aplikaci a bude sloužit k ukládání informací, které používáme pro naše modely, například User
model. Keystone ji používá jako svou databázi a v tuto chvíli nemůžete používat jiné dodavatele databází.
Nyní je čas nainstalovat PM2 (Process Manager 2.) PM2 je správce procesů pro aplikace Node.js ve formě modulu npm. Poskytuje snadný způsob, jak spravovat aplikace a spouštět je na pozadí. Protože je v NPM, vše, co musíme udělat pro jeho instalaci, je spustit následující.
sudo npm install pm2 -g
To říká npm, aby jej nainstaloval globálně, takže jej můžeme použít kdekoli v našem systému.
Dříve jsme spouštěli naši webovou aplikaci s node keystone
. S PM2 je to trochu jiné. Nyní spustíme naši aplikaci uzlu s následujícím.
pm2 start keystone.js
Tím se naše aplikace PM2 přidá do našeho seznamu procesů a zobrazí se malý rámeček, abyste viděli, že je skutečně online. Všimněte si pole označeného id
pro váš proces. Uchovávejte to blízko, protože později na to uvedeme mnoho odkazů.
Chcete-li zobrazit protokoly vaší aplikace.
pm2 logs [id]
Pokud je to například pm2 logs 0
vaše první aplikace PM2.
Pro zastavení vaší webové aplikace kdykoli.
pm2 stop [id]
Chcete-li aplikaci zcela odstranit.
pm2 delete [id]
PM2 má dokonce monitorovací panel, pokud chcete vidět některé základní statistiky pro vaši aplikaci, a můžete k nim přistupovat.
pm2 monit
Zobrazí se některé základní informace, jako je využití paměti RAM, využití procesoru a doba provozu.
Skvělá funkce, kterou PM2 nabízí, je watching
. V podstatě sledování znamená, že PM2 automaticky detekuje změny kteréhokoli ze souborů ve stejném adresáři jako váš startovací soubor a automaticky restartuje vaši aplikaci. Chcete-li to povolit, jednoduše restartujte aplikaci, ale předejte jí příznak sledování.
pm2 restart [id] --watch
Chcete-li zakázat sledování poté, co bylo povoleno, jednoduše znovu spusťte stejný příkaz a sledování bude zakázáno.
V tomto tutoriálu opustíme sledování.
Ujistěte se, že máte nainstalovaný Nginx. Pokud z nějakého důvodu není, postupujte podle výše uvedených kroků.
Upravte nastavení brány firewall. Na Ubuntu ufw
je oficiální firewall. Ve výchozím nastavení jsou připojení blokována na portu 80
. Potřebujeme přidat výjimku pro Nginx na portu 80
, na kterém poběží naše webová aplikace.
sudo ufw allow 'Nginx HTTP'
Ověřte, že váš server Nginx běží.
systemctl status nginx
Pokud pod Active
sekcí vidíte active (running)
, pak je vše připraveno. Pokud ne, můžete zkusit službu restartovat.
systemctl restart nginx
Odstraňte výchozí konfigurační soubor Nginx.
sudo rm /etc/nginx/sites-available/default
Vytvořte nový a jednoduše jej zavolejte node
.
sudo nano /etc/nginx/sites-available/node
Do souboru vložte následující a nahraďte example.com
je doménou svého webu.
listen 80;
server_name example.com;
location / {
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $http_host;
proxy_pass "http://127.0.0.1:3000";
}
}
Všimněte si, že proxy_pass
označuje IP, na které naše aplikace Keystone běží lokálně, což je localhost
na portu 3000
.
listen 80
je port, na který chceme aplikaci přesměrovat, což je v tomto případě port 80
.
Poté musíme vytvořit symbolický odkaz nebo symbolický odkaz na složku s názvem sites-enabled
. Rozdíl mezi sites-enabled
a sites-available
je ten, že sites-enabled
je ve skutečnosti načten Nginxem.
sudo ln -s /etc/nginx/sites-available/node /etc/nginx/sites-enabled/node
Nyní bude váš konfigurační soubor sites-available
připraven k použití a bude načten z sites-enabled
. Chcete-li použít konfiguraci, aby se projevila, jednoduše restartujte Nginx.
sudo systemctl restart nginx
Nakonec restartujte aplikaci PM2
pm2 restart [id]
Nyní můžete přejít na svou doménu v prohlížeči a zobrazí se Welcome to Keystone
obrazovka s panelem, do kterého se můžete přihlásit.
Pokud to vidíte, pak jste úspěšně nastavili produkční webový server Node.js. Pokud ne, možná jste udělali krok špatně a možná se budete chtít vrátit a pečlivě dodržet každý krok.
Více o Nginx se můžete dozvědět na jejich webových stránkách .
Doufám, že se vám tento návod líbil a doufám, že vám pomohl nastavit váš vlastní webový server pro produkci na vašem Vultr VPS.
Používáte jiný systém? Thelia je open source nástroj pro vytváření webových stránek pro e-business a správu online obsahu napsaného v PHP. Zdrojový kód Thelia i
Používáte jiný systém? Microweber je open source drag and drop CMS a online obchod. Zdrojový kód Microweber je hostován na GitHubu. Tento průvodce vám to ukáže
Používáte jiný systém? Microweber je open source drag and drop CMS a online obchod. Zdrojový kód Microweber je hostován na GitHubu. Tento průvodce vám to ukáže
Používáte jiný systém? DotCMS je open-source podnikový systém pro správu obsahu napsaný v Javě. Obsahuje téměř všechny požadované funkce t
Používáte jiný systém? Pagekit 1.0 CMS je krásný, modulární, rozšiřitelný a lehký, bezplatný a open source systém správy obsahu (CMS) s
Používáte jiný systém? BigTree CMS 4.2 je rychlý a lehký, bezplatný a open source podnikový systém pro správu obsahu (CMS) s rozsáhlým
Používáte jiný systém? Pagekit je open source CMS napsaný v PHP. Zdrojový kód Pagekitu je hostován na GitHubu. Tato příručka vám ukáže, jak nainstalovat
Používáte jiný systém? PyroCMS je open source CMS napsaný v PHP. Zdrojový kód PyroCMS je hostován na GitHubu. V tomto průvodci si dobře projděte celý
Používáte jiný systém? Subrion 4.1 CMS je výkonný a flexibilní open source systém správy obsahu (CMS), který přináší intuitivní a jasný obsah
Používáte jiný systém? Backdrop CMS 1.8.0 je jednoduchý a flexibilní, mobilní, bezplatný a open source systém správy obsahu (CMS), který nám umožňuje
Používáte jiný systém? Úvod Roadiz je moderní CMS navržený pro práci s mnoha typy služeb. Na základě komponent Symfony a Doctrine ORM, tj
Používáte jiný systém? Microweber je open source drag and drop CMS a online obchod. Zdrojový kód Microweber je hostován na GitHubu. Tento průvodce vám to ukáže
Používáte jiný systém? Grav je open source plochý CMS napsaný v PHP. Zdrojový kód Grav je veřejně hostován na GitHubu. Tato příručka vám ukáže, jak t
Používáte jiný systém? Grav je open source plochý CMS napsaný v PHP. Zdrojový kód Grav je veřejně hostován na GitHubu. Tato příručka vám ukáže, jak t
Používáte jiný systém? Automad je open source souborový redakční systém (CMS) a šablonový engine napsaný v PHP. Zdrojový kód Automad i
Raneto je bezplatná znalostní báze s otevřeným zdrojovým kódem postavená na Node.js, která se snadno nastavuje a používá a také se snadno spravuje. Kategorie a stránky ar
Používáte jiný systém? Thelia je open source nástroj pro vytváření webových stránek pro e-business a správu online obsahu napsaného v PHP. Zdrojový kód Thelia i
Používáte jiný systém? Říjen 1.0 CMS je jednoduchý a spolehlivý, bezplatný a open source systém správy obsahu (CMS) postavený na frameworku Laravel.
Používáte jiný systém? ImpressPages CMS 5.0 je jednoduchý a efektivní, bezplatný a open source, uživatelsky přívětivý systém pro správu obsahu (CMS) založený na MVC.
Používáte jiný systém? CMS Made Simple 2.2 je flexibilní a rozšiřitelný, bezplatný a open source systém správy obsahu (CMS) inteligentně navržený tak, aby
Umělá inteligence není v budoucnosti, je zde přímo v současnosti V tomto blogu si přečtěte, jak aplikace umělé inteligence ovlivnily různé sektory.
Jste také obětí DDOS útoků a nemáte jasno v metodách prevence? Chcete-li vyřešit své dotazy, přečtěte si tento článek.
Možná jste slyšeli, že hackeři vydělávají spoustu peněz, ale napadlo vás někdy, jak takové peníze vydělávají? Pojďme diskutovat.
Chcete vidět revoluční vynálezy Google a jak tyto vynálezy změnily život každého dnešního člověka? Pak si přečtěte na blogu a podívejte se na vynálezy od Googlu.
Koncept aut s vlastním pohonem, která vyrazí na silnice s pomocí umělé inteligence, je snem, který už nějakou dobu máme. Ale přes několik slibů nejsou nikde vidět. Přečtěte si tento blog a dozvíte se více…
Jak se věda vyvíjí rychlým tempem a přebírá mnoho našeho úsilí, stoupá také riziko, že se vystavíme nevysvětlitelné singularitě. Přečtěte si, co pro nás může znamenat singularita.
Způsoby ukládání dat se mohou vyvíjet od narození dat. Tento blog se zabývá vývojem ukládání dat na základě infografiky.
Přečtěte si blog, abyste co nejjednodušším způsobem poznali různé vrstvy v architektuře velkých dat a jejich funkce.
V tomto digitálním světě se chytrá domácí zařízení stala klíčovou součástí života. Zde je několik úžasných výhod chytrých domácích zařízení o tom, jak náš život stojí za to žít a zjednodušit jej.
Apple nedávno vydal doplňkovou aktualizaci macOS Catalina 10.15.4, která opravuje problémy, ale zdá se, že aktualizace způsobuje další problémy, které vedou k zablokování počítačů mac. Přečtěte si tento článek a dozvíte se více