Polter-ghost!
Ok - so these are the niggles I have with the Ghost blogging platform... April 2018
Don't get me wrong - I love love love Ghost, but they still don't make it easy sometimes...
Hostess with the most-est
- No hosting multi-blog ghost sites documentation that I can find?
- I posted a question here: https://forum.ghost.org/t/documentation-for-self-hosters
- No 'Securing your Ghost' documentation - discovered PRIVACY.md
- No backups WTF! Yes - you heart that correctly, AFAIK no way to backup your sh*t. [1]
Things that they have made huge strides on
- Upgrading minor versions - This is pretty cool
cd /var/www sudo npm install -g ghost-cli@latest for f in ghost morgs.totahi.com normus.totahi.com www.old-chapel-house.com www.holfordfarm.com ; do cd $f; echo $f; ghost update --no-prompt ; cd ..; done
- But, argh - you end up with LOTS of copies of ghost itself.
289M ghost/versions
289M morgs.totahi.com/versions
289M normus.totahi.com/versions
289M www.holfordfarm.com/versions
289M www.old-chapel-house.com/versions
- Is everything up? These are great
ghost ls
cd ghost-root;ghost log;
You know nothing! aka the Jon Snow show...
So here's what I have learned - just tidbits:
- permissions
- the root-ghost folder must be owned by non-root user
- the content folder and children must be owned by ghost.ghost
- upgrades
- it asks for a password - why? not sure, no hint as to what the password is... my account is sudo-no-password, and no hint I can find
- I hate typing in passwords when there is no apparent need - it's a security-anti-pattern training folks to give away their secrets for free.
- it asks for a password - why? not sure, no hint as to what the password is... my account is sudo-no-password, and no hint I can find
- the file-system implementation looks like it works happily with links
- ghost-root
- content -> I assume I have to back this up
- themes
- casper -> a link to current/content/themes/casper
- logs -> logfiles
- should be moved to var/log
- log naming is good - won't collide with other blog-logs
- themes
- versions -> contain the current and historic versions of ghost software
- current -> links to a version - fullpath, sigh
- system -> back this up too - maybe source-control
- nginx-root -> document root for nginx webserver
- used by certbot (aka letsencrypt) --webroot
- files
- ghost_normus-totahi-com.service -> systemd service startup/restart etc
- normus.totahi.com.conf -> nginx site config
- nginx-root -> document root for nginx webserver
- content -> I assume I have to back this up
- ghost-root
Making a spectre of myself
- How to you change the spell check feature
- add custom words - chur bro :)
- ignore words 'with quotes' - sigh!
- set language to something British?
- see suggestions?
Hmmm - well I found a ghost-blog post that says that 16 days ago, the Ghost editor was upgraded to use the browser spell-check... so maybe these are Doctor Google issues? Will hold this thought until I can do more research...
Rental Woes
So being multi-tenanted, I want to consolidate the ghost versions into /usr/share/ghost/versions
so I:
# test the site - all ok using local versions folder
cd /var/www/www.normus.com
sudo mkdir /usr/share/ghost
sudo cp -rp versions /usr/share/ghost
sudo chown -R normus.normus /usr/share/ghost/versions
mv versions versions.dist
sudo ln -s /usr/share/ghost/versions
ghost restart
# test the site...
# all looks good using shared versions folder
and I guess we should test an upgrade...
ghost update
# kaboom - for some reason, doesn't like the permissions on versions.dist
mv versions.dist /tmp
ghost update
# all ok - hoorah!
coffee...
and then the remainder of the blog-sites...
cd /var/www/www.old-chapel-house.com
mv versions /tmp/versions-och
ln -s /usr/share/ghost/versions
ghost restart
Burning logs
So I found: https://github.com/trentm/node-bunyan#stream-type-rotating-file - woohoo, indicates that there might possibly be log-goodness hidden somewhere deep? A project for another day...
Niggle somewhat scratched - I do enjoy venting.
by backup - I mean automatically at 02:00am when I am dreaming of electric sheep, and in a format that can be readily restored when my user asks to ressurect a post they saved a month ago at 6:30 - and then accidentally deleted last week. ↩︎