Skip to content

A quick & dirty container serving my jekyll site with automatic updates

License

Notifications You must be signed in to change notification settings

boyvanduuren/docker-jekyll-arm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

jekyll-arm

A quick & dirty jekyll container based on armbuild/debian.

Requirements

  • an ARM machine
  • SSL cert + key
  • a parsed Jekyll site (but anything that can be served by nginx will do, really)

Why & how

Yesterday I finally put up some content on vanduuren.xyz using Jekyll to generate the site. I made some typos, forgot some words, so I had to manually redeploy a few times. This image fixes that problem for me. The image contains a simple nginx instance serving the Jekyll site over SSL and a script that pulls the latest build every five minutes.

To run:

docker run -d	\
	-e GIT_URL=https://github.com/boyvanduuren/vanduuren.xyz.git \
	-e GIT_BRANCH=live \
	-e DOMAIN=vanduuren.xyz \
	-v /etc/ssl/private/:/etc/ssl/private/ \
	-p 80:80 \
	-p 443:443 \
	boyvanduuren/docker-jekyll
  • GIT_URL is the URL of the repository containing your (built!) Jekyll site
  • GIT_BRANCH is the branch that contains the "live" version of the site
  • DOMAIN is the domain at which this site is served. A redirect from www.${DOMAIN} -> ${DOMAIN} is configured

Furthermore, the shared volume needs to contain a SSL certificate and key named ${DOMAIN}.{key,crt}.

When this is running, all you need to do to update the site in the container is update your Jekyll site, run jekyll build, and push your changes to the configured GIT_BRANCH branch. Of course I need to setup a decent delivery pipeline when I have some more time, but this works for now.

About

A quick & dirty container serving my jekyll site with automatic updates

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published