After I switched to docusaurus I also wanted to make the deployment easier and I had two options:
- selfhost the website(as I did previously with wordpress)
- host it via gitlab pages
I went with the second option, due to the fac that for the first option I had to use ssh credentials to connect to my hosting provider and copy the files there. I wanted to avoid doing that.
So I choose Gitlab Pages which is the same as Github Pages. The advantage of this is that it auto updates the website with just a simple CI job.
So to do this I had to follow these steps:
- I went to the Gitlab pages docs
- Create a repository for your website
- Then go to Settings>Pages
- It will open a page where you need to configure the gitlabci.ymlfor your website to be build and copied to apublicfolder, this is the generated file for my website
- The pipeline will be triggered after you complete all steps and if it passes it will generate a page for it on the gitlab domain, eg: chreniuc.gitlab.io
- I wanted to use my custom domain name, so to do this I went back to Settings>Pagesand there was an option to add a domain, like it's stated in this documentation, the pictures from that page are outdated.
- My domain is managed from CLouldflare, so I had to do the following:- Add the name of the domain in that section from gitlab
- I checked to use Let's encrypt for SSL certs
- In Clouldflare I had to add an Arecord for@(hreniuc.dev) to point to35.185.44.232, not tochreniuc.gitlab.io.as they state in the doc, Clouldflare didn't allow me to use a DNS there, only IP
- In Clouldflare I had to add an TXTrecord for_gitlab-pages-verification-codewith a value to verify it, this will be used for validation that you own the domain
- I also had to add a rule in Clouldflare to redirect from www.hreniuc.devtohreniuc.dev, because I don;t know why, but when I was trying to accesswww.hreniuc.devI ended up getting 401 Not authorized, like here. The rule looked like this:www.hreniuc.dev/*>301 Permanent Redirect>https://hreniuc.dev/$1
- I saved the domain in the Gitlab Pages section and clicked on an icon to retry verifying the domain and it worked
 
Now, everytime I pushed changes to the default branch it auto generated a pipeline and updated the website.
