How to Host Your Own Feminist Blog With Ghost
For $6/month, with limited technical skills
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
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!)
Comments