Easier workflow to deploy with github pages?

I’m currently running ghost locally on WSL2, wget’tting the localhost into a folder, committing, and pushing to my github repo to be hosted for free. It is a pain. Looking for easier (but equally cheap) alternatives.

Template:

  • What’s your URL? aba-blog.xyz
  • What version of Ghost are you using? 4.32.2

My current workflow:

  • I have ghost 4 and gatsby installed on WSL2 Linux of my local Windows machine.
  • I open the terminal, navigate to my local folder, and ghost start to start ghost on localhost:2368
  • I write my posts, change theme…etc. to update my blog.
  • In the terminal, I navigate into the gastby directory, do a wget as follows to copy all the static files from localhost into docs.
wget -r -nH -P ./docs -E -T 2 -np -k http://localhost:2368/
  • Now, the static files in gatsby/docs have URLs pointing to localhost. To fix it, I run a find and replace:
find ./docs -type f -exec sed -i 's/http:\/\/localhost:2368/https:\/\/aba-blog.xyz/g' {} \;
  • The gatsby directory is fully git-tracked. I add . , commit and push into my public repo.
  • My public github repo is hosted via github pages, and connected to my domain aba-blog.xyz. So after few minutes, the changes are available on my public blog.

Question:
My setup isn’t ideal. I got this workflow from a friend. It is a pain to run wget every time. But this is the cheapest way I found. I’m only paying for my domain name (3$ a year) and nothing else. If you know of any easier method, please point me to a step-by-step guide. I would also love to have the whole ghost setup hosted online, so I can edit my blog from any computer without the fear of data getting corrupted.