Docker - Jekyll Container Setup
Here I describe my setup of the Jekyll container.
I run this Docker container on a Ubuntu VM that runs via [[ Proxmox VE ]]. I perform the following on the CLI.
Docker pull command:
docker pull jekyll/jekyll
Within my home folder I have created a Docker folder where I create a subfolder for each container:
cd ~ mkdir -p docker/jekyll cd docker/jekyll mkdir cache mkdir build
I use the Nano text editor to create a shell script:
sudo nano jekyll_run.sh
With this shell script we are going to create the container.
Copy the following into
IDu=$(id -u $(logname)) # Saves the logged in user id in the IDu variable IDg=$(id -g $(logname)) # Saves the logged in user group in the IDg variable docker run -d \ -p 0.0.0.0:4000:4000 \ --hostname=jekyll \ --name=jekyll \ -v /mnt/fileserver/archive/github/fictionbecomesfact:/srv/jekyll \ -v $PWD/cache:/usr/local/bundle \ -v $PWD/build:/srv/jekyll/build \ -e 'TZ=Europe/Amsterdam' \ -e JEKYLL_UID=$IDu \ -e JEKYLL_GID=$IDg \ jekyll/jekyll \ jekyll serve --source /srv/jekyll \ --destination /srv/jekyll/build \ --disable-disk-cache \ --watch \ --force_polling \
If necessary, adjust the following:
Choose a port that is still available, I chose 4000. Check this with netstat
Choose the location of the website. In this example, it’s a shared folder created as mount on the Ubuntu VM
Pick the right timezone
Exit Nano (CTRL-X) and save the changes.
Now create the container:
sudo sh jekyll_run.sh
Check if the container is running properly.
The log shows that it may take a while for the server to run. After that, the website can be reached via the URL:
http://<IP DOCKER SERVER>:4000/
If changes are made to the source code or to notes (e.g. with Obsidian) Jekyll will automatically detect the changes and generate a new build.
Tip: optionally you can install Visual Studio Code Server to edit the source code via the browser
See also my notes about updating containers with Portainer or via the CLI. With Synology’s Docker Application, updating a container is also very easy.
Read other notes
Notes mentioning this note
- Obsidian - Setup a Digital Garden with GitHub and Cloudflare Pages
Here I describe my search for a static website generator.
No comments found for this note.
Join the discussion for this note on this ticket. Comments appear on this page instantly.