Ghost Installieren: Unterschied zwischen den Versionen

Aus Hostsharing Wiki
Zur Navigation springen Zur Suche springen
KKeine Bearbeitungszusammenfassung
 
Zeile 64: Zeile 64:
Zum Schluß wird die Anwendung in der Datei ''~/ghost/config.js'' konfiguriert. Der Teil im Abschnitt ''config / production'' ist wichtig. Etwa wie folgt:
Zum Schluß wird die Anwendung in der Datei ''~/ghost/config.js'' konfiguriert. Der Teil im Abschnitt ''config / production'' ist wichtig. Etwa wie folgt:


<syntaxhighlight lang=json line>
<syntaxhighlight lang=javascript line>
config = {
config = {
     production: {
     production: {
Zeile 86: Zeile 86:
Alternativ für MySQL lautet die Datenbank-Konfiguration:
Alternativ für MySQL lautet die Datenbank-Konfiguration:


<syntaxhighlight lang=json line>
<syntaxhighlight lang=javascript line>
database: {
database: {
   client: 'mysql',
   client: 'mysql',

Aktuelle Version vom 28. Juni 2024, 11:24 Uhr

Ghost installieren

Ghost ist eine moderne einfache Weblog-Software in JavaScript.

Vorbereitung

Als Paket-Admin xyz00 werden mit HSAdmin ein User angelegt und eine Domain aufgeschaltet. Eine produktive Installation von Ghost kann mit SqLite oder MySQL genutzt werden. Wenn SqLite genutzt werden soll entfällt das Anlegen des MySQL-Users und der MySQL-Datenbank.

Als Paketadmin xyz00 aufrufen:

hsscript -i

In der HSAdmin-Shell gibt man dann ein:

xyz00@hsadmin> user.add({set:{name:'xyz00-ghost', password:'mein-Geheimwort', shell:'/bin/bash'}})
xyz00@hsadmin> domain.add({set:{name:'ghost.example.com', user:'xyz00-ghost'}})
xyz00@hsadmin> mysqluser.add({set:{name:'xyz00_ghostusr', password:'anderes-Geheimwort'}})
xyz00@hsadmin> mysqldb.add({set:{name:'xyz00_ghostdb', owner:'xyz00_ghostusr'}})
xyz00@hsadmin> bye

Installation

Als Paketadmin xyz00 nimmt man mit

sudo -u xyz00-ghost -i

die Rechte des Domain-Administrators xyz00-ghost für die neue Domain ghost.example.com an.

Die Ghost-Software wird von der Seite http://ghost.org heruntergeladen (Stand heute ist Version 0.11.7 aktuell), der Download-Link liegt unter https://ghost.org/de/developers/.

Den Download ins User-Verzeichnis umbennen in ghost-0.11.7.zip und ins $HOME des Domain-User hochladen.

cd
mkdir ghost
cd ghost
unzip ../ghost-0.11.7.zip 
npm install --production

Konfiguration für Apache und Passenger

Ghost benötigt die NodeJS-Version 4.x. Die Installation ist unter NodeJS beschrieben.

Die statischen Dateien der Anwendung werden mit den folgenden Befehlen richtig verlinkt (immer noch als User xyz00-ghost):

cd
cd ~/doms/ghost.example.com/htdocs/
rm .htaccess
ln -s ~/ghost/core/shared .
ln -s ~/ghost/content/themes/casper/assets ./assets
cd ~/doms/ghost.example.com/htdocs-ssl/
rm .htaccess
ln -s ~/ghost/core/shared .
ln -s ~/ghost/content/themes/casper/assets ./assets

Für die Anwendung legen wir in den Verzeichnissen ~/doms/ghost.example.com/app/ und ~/doms/ghost.example.com/app-ssl/ eine Datei app.js mit dem folgenden Inhalt an:

require('/home/pacs/xyz00/users/ghost/ghost/index.js');
process.chdir('/home/pacs/xyz00/users/ghost/ghost');

Zum Schluß wird die Anwendung in der Datei ~/ghost/config.js konfiguriert. Der Teil im Abschnitt config / production ist wichtig. Etwa wie folgt:

config = {
    production: {
        url: 'https://ghost.example.com',
        mail: {
            transport: 'SMTP',
            options: {
                host:'localhost'
            }
        },
        database: {
            client: 'sqlite3',
            connection: {
                filename: path.join(__dirname, '/content/data/ghost.db')
            },
            debug: false
        },
        ...

Alternativ für MySQL lautet die Datenbank-Konfiguration:

database: {
  client: 'mysql',
  connection: {
    host     : 'localhost',
    user     : 'xyz00_ghostusr',
    password : 'anderes-Geheimwort',
    database : 'xyz00_ghostdb',
    charset  : 'utf8'
  }
}

Eine Konfiguration mit einer Postgres-Datenbank soll ebenfalls möglich sein. Sie wird vom Ghost-Projekt jedoch nicht getestet.


Ghost sollte nun unter der URL: https://ghost.example.com/ erreichbar sein. Administration unter https://ghost.example.com/ghost/

Links