Instructions for self-hosting Jekyll

These are my notes on self hosting Jekyll, mostly taken from the documentation.

This was done on a Debian 13 instance, hosted at Hertzner. The steps should be similar elsewhere.

Setup DNS

I’m using a CNAME directed at this VM.

Configure nginx

Start by creating a config file named /etc/nginx/sites-enabled/vhost.name. The critical sections are:

server {

    # SSL configuration
    listen 443 ssl default_server;
    listen [::]:443 ssl default_server;
    
    server_name vhost.name; 
    root /home/jekyll/vhost/_site;

    location / {
            proxy_pass http://127.0.0.1:4000;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
    }
}

Jekyll Setup

Create a jekyll user:

adduser jekyll

Create a directory:

mkdir 

Let’s Encrypt Certbot setup

You can find the source code for Minima at GitHub: jekyll / minima

You can find the source code for Jekyll at GitHub: jekyll / jekyll