{"id":19336780,"url":"https://github.com/samrocketman/docker-jekyll","last_synced_at":"2026-05-09T06:31:25.523Z","repository":{"id":145441969,"uuid":"140038602","full_name":"samrocketman/docker-jekyll","owner":"samrocketman","description":"A development environment for Jekyll which relies on Docker to contain dependencies.","archived":false,"fork":false,"pushed_at":"2020-10-18T07:11:50.000Z","size":8,"stargazers_count":1,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-24T08:13:35.855Z","etag":null,"topics":["docker","docker-compose","jekyll","jekyll-docker"],"latest_commit_sha":null,"homepage":"","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"unlicense","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/samrocketman.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-07-06T23:41:59.000Z","updated_at":"2020-04-14T21:27:46.000Z","dependencies_parsed_at":null,"dependency_job_id":"3aad83ed-c93a-4908-a0ed-8a64e2187edd","html_url":"https://github.com/samrocketman/docker-jekyll","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/samrocketman/docker-jekyll","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samrocketman%2Fdocker-jekyll","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samrocketman%2Fdocker-jekyll/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samrocketman%2Fdocker-jekyll/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samrocketman%2Fdocker-jekyll/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/samrocketman","download_url":"https://codeload.github.com/samrocketman/docker-jekyll/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/samrocketman%2Fdocker-jekyll/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32809567,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-08T08:22:46.396Z","status":"online","status_checked_at":"2026-05-09T02:00:06.633Z","response_time":123,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","docker-compose","jekyll","jekyll-docker"],"created_at":"2024-11-10T03:12:25.677Z","updated_at":"2026-05-09T06:31:25.254Z","avatar_url":"https://github.com/samrocketman.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Jekyll website development made easy\n\n\u003cimg\nsrc=\"https://user-images.githubusercontent.com/875669/35621353-e78a6956-0638-11e8-8e07-3d96e9e91dd7.png\"\nheight=48 width=72 alt=\"Docker Logo\" /\u003e \u003cimg\nsrc=\"https://user-images.githubusercontent.com/875669/42405293-405f1cae-8148-11e8-8c81-c464be1d36bb.jpeg\"\nheight=48 width=41 alt=\"Ruby Logo\" /\u003e \u003cimg\nsrc=\"https://user-images.githubusercontent.com/875669/42405359-638eff9a-8149-11e8-8812-fa950f6a0387.png\"\nheight=48 width=104 alt=\"Jekyll Logo\" /\u003e\n\nLearn more [about Jekyll][jekyll].  This project aims to help getting started\nwith Jekyll easy by using [Docker][docker] for managing Jekyll dependencies.\n\nThis project is a development environment for Jekyll which solely relies on\nDocker provide all dependencies for Jekyll.\n\n# Features\n\n- A self contained development environment based on the lightweight Alpine\n  Linux.\n- Uses only [Trusted Official Repositories][official-repos].\n- Examples rely on [bundler][bundler] for ruby best practices in package\n  management.\n\n# Requirements\n\n* [Docker][docker]\n\nOptionally, `make` makes it easy.  Otherwise, if you do not wish to use `make`\nthen reference the [`Makefile`](Makefile) for running commands.\n\n# Getting started (first time)\n\n1. Fork this repository.\n2. Execute `make` to start an initial docker image with a minimal jekyll\n   installation.\n3. Initialize your first Jekyll website inside of the docker container and exit.\n\n   ```\n   jekyll new --force .\n   rm Gemfile.lock\n   # recreate the Gemfile.lock\n   bundle install\n   exit\n   ```\n\n4. Now that you're outside of the container commit your initial changes.\n\n   ```\n   git add -A\n   git commit -m \"My first jekyll site\"\n   ```\n\n5. Rebuild your docker container so that it properly includes your development\n   dependencies.\n\n   ```\n   make build\n   ```\n\nNow you're ready to develop your website.  Proceed to the _Development Guide_\nsection.\n\n# Development Guide\n\nStart the interactive development environment.  This will create a shell inside\nof a docker container.  The container will share the host networking.\n\n    make\n\nFrom here, you're developing inside of the container.  Your working directory is\nthe root of your git repository so that you can develop.  Start the web server\nto render your jekyll website.\n\n    jekyll serve\n\nVisit `http://127.0.0.1:4000/` in your web browser to see the website.\n\n\u003e Pro tip: skip the interactive environment by running `docker-compose up`.\n\nIf you add ruby packages to your `Gemfile` then you'll want to rebuild your\ndevelopment container and update `Gemfile.lock`.  This must be done from within\nthe interactive environment.  The following commands are relevant for achieving\nthis.\n\n```bash\n# add your changes to Gemfile\n# enter the interactive docker environment\nmake\n\n# update Gemfile.lock\nbundle install\n\n# exit the docekr environment\nexit\n\n# rebuild the docker container to include the new Gemfile changes\nmake build\n\n# restart the development environment which will now include new dependencies\n# pre-installed.\nmake\n```\n\nWhen you're done developing you may wish to delete the development environment.\nTo delete, run the following.\n\n    make clean\n\n# Is it Magic?\n\nNo!  The `make` command reads and runs the [`Makefile`](Makefile).  The\n`Makefile` includes several targets: `interactive`, `build`, `clean`, `serve`.\nYou can run any of the targets by running `make [TARGET]`.  If no `TARGET` is\nspecified then `make` will default to the first target defined in the\n`Makefile`.  The following two commands will result in the same action.\n\n```bash\n# Run make with the default target: interactive\nmake\n\n# Specify the interactive target\nmake interactive\n```\n\nwhich in turn\nruns the `docker-compose` command.  The `docker-compose` command reads and runs\n[`docker-compose.yml`](docker-compose.yml) which is using the [Docker Compose\nFile Version 2][compose-v2].\n\nSee also:\n\n    docker-compose --help\n    docker-compose run --help\n    docker-compose down --help\n\n[bundler]: https://bundler.io/\n[compose-v2]: https://docs.docker.com/compose/compose-file/compose-file-v2/\n[docker]: https://www.docker.com/community-edition\n[jekyll]: https://jekyllrb.com/\n[official-repos]: https://docs.docker.com/docker-hub/official_repos/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamrocketman%2Fdocker-jekyll","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsamrocketman%2Fdocker-jekyll","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsamrocketman%2Fdocker-jekyll/lists"}