Ghost: Różnice pomiędzy wersjami

 
(Nie pokazano 32 wersji utworzonych przez 5 użytkowników)
Linia 5: Linia 5:
 
Do uruchomienia Ghost należy najpierw zadbać o prawidłową konfigurację samej domeny. Przed przystąpieniem do dalszych kroków należy upewnić się, że:
 
Do uruchomienia Ghost należy najpierw zadbać o prawidłową konfigurację samej domeny. Przed przystąpieniem do dalszych kroków należy upewnić się, że:
 
* Domena jest prawidłowo dodana i skonfigurowana w naszym systemie [[DNS]].
 
* Domena jest prawidłowo dodana i skonfigurowana w naszym systemie [[DNS]].
* Została dodana [[Strona WWW]] z wskazaniem typu Node.js w wersji 0.10.x.
+
* Została dodana [[Strona WWW]] z wskazaniem typu Node.js w wersji 18.
 +
* Został dodany certyfikat SSL dla domeny (można wygenerować w panelu darmowy, uznawany certyfikat SSL Let's Encrypt).
 
* Włączono możliwość korzystania z własnego oprogramowania - [[Binexec]].
 
* Włączono możliwość korzystania z własnego oprogramowania - [[Binexec]].
 +
* Wykonano [[Node.js#Wstępna_konfiguracja|wstępną konifgurację]] Node.js wraz z ustawieniem Node 18.
 +
* Utworzono bazę danych [[MySQL]].
 +
* Zarezerwowano [[Rezerwacja_portów|jeden port TCP]] (wymagany w trakcie instalacji poprzez ghost-cli).
  
 
=== Instalacja ===
 
=== Instalacja ===
  
{{Warning|Do uruchomienia ghost jest wymagana własna [[Node.js#W.C5.82asna_wersja_Node.js|instalacja]] node w wersji 0.10.x, która jest w pełni wspierana przez twórców. Ghost nie działa na systemowej wersji node.}}
+
* Aby zainstalować Ghost należy najpierw [[logowanie|zalogować się]] na ''MyDevil'' poprzez SSH i przejść do katalogu <code class="directory">~/domains/''domena''</code>. Gdzie "domena" to nazwa utworzonej uprzednio strony www: <syntaxhighlight lang="bash">cd ~/domains/domena </syntaxhighlight>
''Ghost'' trzeba zainstalować ze źródeł. Aby to zrobić należy się [[logowanie|zalogować]] na shellu ''MyDevil'' i przejść do katalogu <code class="directory">/usr/home/''login''/domains/''domena''/public_nodejs</code>. Następnie trzeba:
 
# Ściągnąć pliki ''Ghosta'' <code>fetch -o ghost.zip <nowiki>https://ghost.org/zip/ghost-latest.zip</nowiki></code>.
 
# Wypakować archiwum <code>unzip ghost.zip</code>.
 
# Usunąć archiwum <code>rm ghost.zip</code>.
 
# Zainstalować zależności <code>export C=clang && export CXX=clang++ && npm install --production</code>.
 
# Utworzyć plik <code class="directory">app.js</code> z zawartością ''require("./index.js");'' <code>echo "require(\"./index.js\");" >> app.js</code>.
 
# Usunąć plik <code>rm public/index.html</code>.
 
  
{{Notice|W przypadku problemów z instalacją sqlite 3.0.8 należy usunąć go z wymagań package.json i npm-shrinkwrap.json i zainstalować go ze źródeł <code><nowiki>npm install https://github.com/mapbox/node-sqlite3/tarball/master</nowiki></code>}}
+
* Usunąć zawartość katalogu (usunie to wszystkie pliki w katalogu, należy zachować ostrożność, jak i sprawdzić czy jesteśmy w prawidłowym katalogu) poleceniem: <syntaxhighlight lang="bash">rm -R *</syntaxhighlight>
Panel administracyjny bloga znajduje się subURL-u /ghost.
+
* Zainstalować ghost-cli <syntaxhighlight lang="bash">npm i -g ghost-cli</syntaxhighlight>
 +
* Uruchomić instalację Ghost wraz ze wskazaniem uprzednio zarezerwowanego portu (w przykładzie wskazano port 5555, należy go zmienić) <syntaxhighlight lang="bash">ghost install --no-setup-nginx --port 5555 </syntaxhighlight>
 +
 
 +
* Przy pytaniu o ''Enter your blog URL:'' podajemy adres domeny, poprzedzamy go ''https://''. Nie podajemy portu na końcu. Następne pytania dotyczą MySQL. Podajemy host serwera MySQL, nazwę użytkownika bazy, hasło do bazy oraz nazwę bazy. Przy pytaniach o utworzeniu użytkownika bazy danych ghost, skonfigurowania Nginx oraz  Systemd, startowaniu Ghost odpowiadamy '''n'''.
 +
 
 +
* Skopiować utworzony plik konfiguracyjny: <syntaxhighlight lang="bash">cp config.production.json current/</syntaxhighlight>
 +
 
 +
* Utworzyć wymagane link symboliczy między current a public_nodejs: <syntaxhighlight lang="bash">ln -s current public_nodejs</syntaxhighlight>
 +
 
 +
* Utworzyć plik <code class="directory">app.js</code> z zawartością <code>''require("./index.js");</code>'' w public_nodejs poprzez polecenie: <syntaxhighlight lang="bash">echo "require(\"./index.js\");" >> public_nodejs/app.js</syntaxhighlight>
 +
 
 +
* Utworzyć dostęp do logów: <syntaxhighlight lang="bash">mkdir logs && ln -s /usr/local/devil/logs/httpd/users/${USER}/$(basename `pwd`)/ ./logs/access</syntaxhighlight>
 +
 
 +
 
 +
Panel administracyjny bloga znajduje się pod adresem <nowiki>http://domena.pl/ghost</nowiki> gdzie ''domena.pl'' to adres naszej strony, po zainstalowaniu Ghost należy wejść na podany adres w celu utworzenia konta administratora.
  
 
=== Odnośniki zewnętrzne ===
 
=== Odnośniki zewnętrzne ===
* [https://ghost.org/about/ Ghost project]
+
* [https://docs.ghost.org Dokumentacja Ghost]
 +
*[https://ghost.org/docs/faq/node-versions/ Strona dokumentacji wskazująca wymagania wersji Node.js dla poszczególnych wersji Ghost]
  
 
[[Kategoria:Poradniki]]
 
[[Kategoria:Poradniki]]
 
[[Kategoria:Node.js]]
 
[[Kategoria:Node.js]]

Aktualna wersja na dzień 12:20, 4 lut 2024

Ghost to otwarty system blogowy publikowany na licencji MIT.

Wstępna konfiguracja

Do uruchomienia Ghost należy najpierw zadbać o prawidłową konfigurację samej domeny. Przed przystąpieniem do dalszych kroków należy upewnić się, że:

  • Domena jest prawidłowo dodana i skonfigurowana w naszym systemie DNS.
  • Została dodana Strona WWW z wskazaniem typu Node.js w wersji 18.
  • Został dodany certyfikat SSL dla domeny (można wygenerować w panelu darmowy, uznawany certyfikat SSL Let's Encrypt).
  • Włączono możliwość korzystania z własnego oprogramowania - Binexec.
  • Wykonano wstępną konifgurację Node.js wraz z ustawieniem Node 18.
  • Utworzono bazę danych MySQL.
  • Zarezerwowano jeden port TCP (wymagany w trakcie instalacji poprzez ghost-cli).

Instalacja

  • Aby zainstalować Ghost należy najpierw zalogować się na MyDevil poprzez SSH i przejść do katalogu ~/domains/domena. Gdzie "domena" to nazwa utworzonej uprzednio strony www:
    cd ~/domains/domena
  • Usunąć zawartość katalogu (usunie to wszystkie pliki w katalogu, należy zachować ostrożność, jak i sprawdzić czy jesteśmy w prawidłowym katalogu) poleceniem:
    rm -R *
  • Zainstalować ghost-cli
    npm i -g ghost-cli
  • Uruchomić instalację Ghost wraz ze wskazaniem uprzednio zarezerwowanego portu (w przykładzie wskazano port 5555, należy go zmienić)
    ghost install --no-setup-nginx --port 5555
  • Przy pytaniu o Enter your blog URL: podajemy adres domeny, poprzedzamy go https://. Nie podajemy portu na końcu. Następne pytania dotyczą MySQL. Podajemy host serwera MySQL, nazwę użytkownika bazy, hasło do bazy oraz nazwę bazy. Przy pytaniach o utworzeniu użytkownika bazy danych ghost, skonfigurowania Nginx oraz Systemd, startowaniu Ghost odpowiadamy n.
  • Skopiować utworzony plik konfiguracyjny:
    cp config.production.json current/
  • Utworzyć wymagane link symboliczy między current a public_nodejs:
    ln -s current public_nodejs
  • Utworzyć plik app.js z zawartością require("./index.js"); w public_nodejs poprzez polecenie:
    echo "require(\"./index.js\");" >> public_nodejs/app.js
  • Utworzyć dostęp do logów:
    mkdir logs && ln -s /usr/local/devil/logs/httpd/users/${USER}/$(basename `pwd`)/ ./logs/access


Panel administracyjny bloga znajduje się pod adresem http://domena.pl/ghost gdzie domena.pl to adres naszej strony, po zainstalowaniu Ghost należy wejść na podany adres w celu utworzenia konta administratora.

Odnośniki zewnętrzne