Feminist Writing. Fourth Wave. For Women.

How to Host Your Own Feminist Blog With Ghost

For $6/month, with limited technical skills

How to Host Your Own Feminist Blog With Ghost

If you are a radical feminist hoping to write online, you'll pretty quickly be disappointed. Large blogging platforms, like Medium, which are accessible to new writers and don't requite managing a website, have started banning radical feminists left and right. If you set up shop on a hosted blog platform, like Wordpress, you may find your entire website deleted or censored with no warning–like GenderTrender did in 2018. When your content is tied to a hosting provider, they ultimately have the power over your site.

The most accessible solution to this is separate your content from your hosting provider, or what is commonly called "cloud hosting". However, the steps that are required to set up, install, and maintain a server for your website can be intimidating to non-technical writers.

1. Buy a Domain Name on Namecheap


2. Create a Digital Ocean Account

  • Create project
  • Add domain to Digital Ocean
  • Create -> Domains/DNS
  • Enter domain, select project
  • Click “Add Domain”
  • Select your SSH Key
  • “Choose a hostname” -> name of project
  • Enable backups

3. Point Domain to DigitalOcean

https://www.digitalocean.com/community/tutorials/how-to-point-to-digitalocean-nameservers-from-common-domain-registrars

4. Install a Terminal

On Mac:

https://blog.galvanize.com/how-to-use-the-terminal-command-line/

On Windows:

https://executecommands.com/how-to-install-windows-terminal-in-windows-10/

5. Generate your SSH Key

In terminal:

  • Terminal: ssh-keygen
  • Click “enter” through the prompts
  • This will generate two files, by default called id_rsa and id_rsa.pub. Next, add this public key. (Never share id_rsa - this is private!)
  • Terminal:
  • cat ~/.ssh/id_rsa.pub
  • Copy output from this command

6. Install Ghost Droplet in DigitalOcean

https://marketplace.digitalocean.com/apps/ghost

  • Add your SSH key
  • Sidebar “Account” - “Settings”
  • SSH Keys -> “Add SSH Key”
  • Paste key from your terminal
  • Give it a name like “My Computer”
  • Go to project -> Create Droplet
  • Marketplace tab - > search for “Ghost”
  • Choose settings:
  • $5/month
  • Choose datacenter near you
  • Check IPv6
  • Add your domain as a resource
  • Click “Create Droplet”
  • Wait till it finishes

7. Connect IP to URL

  • On project page, click domain and “manage domain”
  • Add @ record and direct to your new droplet
  • Important! Wait until DNS is propagated:
  • Test by in terminal: ping myblog.com
  • Check if IP is same as in DigitalOcean
  • Or check by going to URL, and you should see login screen
  • This can take an hour or more

8. Configure Droplet

  • Copy IP address from Digital Ocean
  • Terminal: ssh root@use_your_ip_address
  • Terminal: “yes”
  • Terminal: enter
  • Wait for it to finish
  • Terminal: enter url ex. “myblog.com”
  • Ghost was installed successfully! To complete setup of your publication, visit:
    https://myblog.com/ghost/

Troubleshooting

https://ghost.org/docs/config/

If your DNS wasn’t fully propagated:

  • You will see:
    Message: Uh-oh! It looks like your domain isn't set up correctly yet. Because of this, SSL setup won't work correctly. Once you've set up your domain and pointed it at this server's IP, try running `ghost setup ssl` again.
  • Terminal: sudo -i -u ghost-mgr
  • Terminal: cd /var/www/ghost

9. Set up Admin Details

10. Choose a Theme

11. Backup your data

From the folder you want to put your backup in:

ssh root@[YOURDOMAIN] mysqldump ghost_production > ghost.sql

rsync -av root@[YOURDOMAIN]:/var/www/ghost/content .

(this might take some time)

If you need to reupload: https://phoenixnap.com/kb/import-and-export-mysql-database

Enter your email below to sign in or become a 4W member and join the conversation.
(Already did this? Try refreshing the page!)