Note
This is a work in progress.
Option 1 — Named Docker volume (gems managed by Docker):
docker run --rm -it \
--platform linux/amd64 \
-v "$PWD:/srv/jekyll" \
-v jekyll-gems:/usr/local/bundle \
-p 4000:4000 \
jekyll/jekyll:latest \
jekyll serve --watchOption 2 — Local folder cache (gems visible in repo, ignored by git):
docker run --rm -it \
--platform linux/amd64 \
-v "$PWD:/srv/jekyll" \
-v "$PWD/.jekyll-bundle:/usr/local/bundle" \
-p 4000:4000 \
jekyll/jekyll:latest \
jekyll serve --watch