Community effort to redesign CentOS websites using jekyll 4 and bootstrap 4.
This section describes the steps you need to follow in order to render the final site using jekyll in Fedora 31/CentOS 8, with rootless container. Let's assume the following (so feel free to update):
Let's first clone git repo and ensure that some files in container will be owned by jekyll :
test -d ${git_directory} || mkdir -p ${git_directory} pushd ${git_directory} test -d centos.org || git clone ${git_upstream} for i in .jekyll-cache vendor vendor/bundle _site ; do podman unshare mkdir -p ${git_directory}/centos.org/${i} podman unshare chown -R 1000:1000 ${git_directory}/centos.org/${i} done podman unshare chown -R 1000:1000 ${git_directory}/centos.org/Gemfile.lock popd
Let's now for the first time launch jekyll :
podman images |grep -q jekyll || podman run --volume="${git_directory}/centos.org:/srv/jekyll:z" --volume="${git_directory}/centos.org/vendor/bundle:/usr/local/bundle:z" --rm -it jekyll/jekyll bundle update
If that works, you'll have everything you need. You can then render/build the website (under _site directory) like this :
podman run --volume="${git_directory}/centos.org:/srv/jekyll:z" --volume="${git_directory}/centos.org/vendor/bundle:/usr/local/bundle:z" --rm -it jekyll/jekyll jekyll build
If you want to also edit file and have jekyll automatically rebuild the site when files are added/updated, you can run with with --watch
podman run --volume="${git_directory}/centos.org:/srv/jekyll:z" volume="${git_directory}/centos.org/vendor/bundle:/usr/local/bundle:z" --rm -it jekyll/jekyll jekyll build --watch
Viewing website locally (so point browser to http://localhost:4000 :
podman run --volume="${git_directory}/centos.org:/srv/jekyll:z" volume="${git_directory}/centos.org/vendor/bundle:/usr/local/bundle:z" -p 4000:4000/tcp --rm -it jekyll/jekyll jekyll serve