Instalace Ghost CMS bez CLI s cPanelem a Node.js

cPanel 3. úno 2021

Tento návod využijte pouze v případě, že Vám instalace dle oficiální dokumentace nefungovala. Určitě doporučuji upřednostnit instalaci pomocí Ghost CLI.

Požadavky:

  • cPanel
  • Node.js modul v cPanelu

1. Stažení Ghostu

Z GitHub Releases si stáhněte nejnovější release.

2. Založte Node.js aplikaci v cPanelu

Jděte do cPanelu a v sekci Software klikněte na Setup Node.js App.

Na stránce, která se otevře klikněte na CREATE APPLICATION.

Zobrazí se Vám formulář, do něhož zadáte podrobnosti.

  • Node.js version - doporučuji zvolit verzi s "recommended" v závorce
  • Application mode - prozatím ponecháme Development
  • Application root - zadejte cestu na disku, kde Vaše aplikace bude
  • Application URL - adresa, na které bude aplikace přístupná
  • Application startup file - zde zadejte index.js (důležité)
Místo blog.nester.cz si samozřejmě zvolte vlastní doménu

Následně klikněte na CREATE.

Nyní aplikaci zastavte kliknutím na tlačítko STOP APP.

3. Rozbalte stažený ZIP

ZIP soubor, který jste si stáhli v prvním kroku nyní rozbalte do adresáře, ve kterém bude Ghost aplikace umístěná. Tedy do adresáře, který jste zadali při vytváření aplikace do pole Application root.

Doporučuji před samotným rozbalením smazat obsah adresáře, kromě souboru .htaccess. Pokud smažete i .htaccess, aplikace Vám následně nebude fungovat.

4. Vytvořte konfigurační soubor(y)

V adresáři, kam jste v předchozím kroku rozbalili ZIP nyní vytvořte soubor config.development.json s obsahem:

  • Místo https://sub.domena.cz zadejte svoji URL adresu, kterou jste nastavili při vytváření aplikace.
  • Nezapomeňte vyplnit přihlašovací údaje k MySQL databázi.
  • Místo noreply@domena.cz zadejte e-mailovou adresu na svoji doméně pro odesílání e-mailů.
{
	"url": "https://sub.domena.cz",
	"database": {
		"client": "mysql",
		"connection": {
			"host": "localhost",
			"port": 3306,
			"user": "uzivateldatabaze",
			"password": "heslokdatabazi",
			"database": "databaze"
		}   
	},
	"mail": {
		"transport" : "Direct",
		"from": "noreply@domena.cz"
	},   
	"paths": {
		"contentPath": "content/"
	},
	"logging": {
		"level": "info",
		"rotation": {
			"enabled": true
		},
		"transports": ["file", "stdout"]
	}
}

Soubor config.development.json zduplikujte a název zduplikovaného souboru uveďte config.production.json.

Ve výsledku budete mít tedy v kořenovém adresáři aplikace 2 soubory se stejným obsahem. První config.development.json a druhý config.production.json.

5. Nainstalujte aplikaci

Vraťte se do detailů Node.js aplikace v cPanelu a klikněte na tlačítko Run NPM install. Jestliže tlačítko nejde stisknou, refreshnete stránku pomocí F5.

6. Spusťte aplikaci

Po dokončení instalace můžete vesele kliknout na tlačítko START APP.

Ghost nefunguje? Ujistěte se, že nemáte prázdný soubor .htaccess

Soubor .htaccess je generován automaticky v jednom z kroků instalace. Může se ale stát, že automatická generace neproběhne nebo si soubor smažete. V takovém stádiu je aplikace neovladatelná. Vždy ale můžete .htaccess vytvořit ručně.

Doporučený obsah souboru .htaccess:

# DO NOT REMOVE. CLOUDLINUX PASSENGER CONFIGURATION BEGIN
PassengerAppRoot "/home/cpaneluzivatel/sub.domena.tld"
PassengerBaseURI "/"
PassengerNodejs "/home/cpaneluzivatel/nodevenv/sub.domena.tld/12/bin/node"
PassengerAppType node
PassengerStartupFile index.js
# DO NOT REMOVE. CLOUDLINUX PASSENGER CONFIGURATION END
  • Místo cpaneluzivatel doplňte název svého cPanel účtu (primárního)
  • Místo sub.domena.tld doplňte název domény, na které má aplikace běžet.

Bude-li vše fungovat, aplikaci můžete posléze přepnout z režimu Development do režimu Production. (V detailu aplikace v cPanel Node.js modulu)

Tags

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.