February 18, 2016

Installation Und Konfiguration Von Ghost Unter Freebsd Und Nginx

Ich benutze auf meinem Server FreeBSD und als Bogging-Software Ghost. Hier ein paar Infos wie man das ans laufen bekommt. Mittlerweile geht das recht schmerzfrei :-)

Installieren von Node.js und NPM

$ sudo portmaster www/node010 www/npm
$ node -v
v0.10.40
$ npm -v
2.14.7

Erstellen des Users

$ sudo adduser 
Username: ghost
Full name: Ghost Blog User
Uid (Leave empty for default): 
Login group [ghost]: www
Login group is www. Invite ghost into other groups? []: 
Login class [default]: 
Shell (sh csh tcsh bash rbash zsh rzsh git-shell nologin) [sh]: 
Home directory [/home/ghost]: /usr/local/www/ghost
Home directory permissions (Leave empty for default): 
Use password-based authentication? [yes]: no
Lock out the account after creation? [no]: no
Username   : ghost
Password   : <disabled>
Full Name  : Ghost Blog User
Uid        : 1002
Class      : 
Groups     : www 
Home       : /usr/local/www/ghost
Home Mode  : 
Shell      : /bin/sh
Locked     : no
OK? (yes/no): y
adduser: INFO: Successfully added (ghost) to the user database.
Add another user? (yes/no): no
Goodbye!

Erstellen des Unterverzeichnisses und entpacken

$ su - ghost
$ pwd
/usr/local/www/ghost
$ mkdir blog
$ cd blog
$ unzip /tmp/ghost-0.6.2.zip 

Installieren

$ CXX=c++ npm install sqlite3 --sqlite=/usr/local
$ npm install --production --sqlite=/usr/local

Anpassen der config.js Datei

Ich habe den URL und die Maileinstellungen angepasst

        url: 'http://pixelchrome.org/blog',
        mail: {
                transport: 'SMTP',
                options: {
                        host: '127.0.0.1',
                        service: '23mail'
                }
        },

Ghost manuell starten

$ npm start --production

NGINX Konfiguration

Ghost läuft bei mir in einem Unterverzeichnis und nicht in einer eigenen Domain oder Sub Domain. Auch hier gibt es eine schöne Anleitung von allaboutghost.com

location ^~ /blog {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy true;

        proxy_pass http://127.0.0.1:2368;
        proxy_redirect off;
   }

Startup Service

Um Ghost als Service unter FreeBSD laufen zu lassen, habe ich mich an die Anleitung von Jakob Gillich gehalten.

All rights reserved - 2019

Powered by Hugo & Kiss.