more docs
This commit is contained in:
parent
ddb9929419
commit
f712efb456
@ -17,7 +17,7 @@ Add this line to site's `Gemfile`:
|
||||
```ruby
|
||||
gem "jekyll-theme-isabelline", "~> 0.1.0"
|
||||
```
|
||||
And add this line to your Jekyll site:
|
||||
And add this line to your Jekyll site `_config.yaml`:
|
||||
|
||||
```yaml
|
||||
theme: jekyll-theme-isabelline
|
||||
|
113
_blog/jekyll-with-docker.md
Normal file
113
_blog/jekyll-with-docker.md
Normal file
@ -0,0 +1,113 @@
|
||||
---
|
||||
title: Using Jekyll with docker
|
||||
layout: page
|
||||
date: 2020-09-07
|
||||
tags: docker docker-compose jekyll
|
||||
---
|
||||
|
||||
# {{ page.title }}
|
||||
|
||||
If you have docker desktop installed and you dont wish to install ruby/jekyll, you can use docker to create and author your jekyll-based site.
|
||||
|
||||
## Getting started
|
||||
|
||||
To create a new website, create a new directory:
|
||||
|
||||
```sh
|
||||
mkdir new-jekyll-site && cd new-jekyll-site
|
||||
```
|
||||
|
||||
Run `jekyll new` in a container:
|
||||
|
||||
```sh
|
||||
docker run --rm -it -v (PWD):/srv/jekyll jekyll/jekyll:4 jekyll new .
|
||||
```
|
||||
|
||||
## Configuring isabelline theme
|
||||
|
||||
Add the following line to `Gemfile`:
|
||||
|
||||
```ruby
|
||||
gem "jekyll-theme-isabelline", "~> 0.1.0"
|
||||
```
|
||||
|
||||
And add this line to your Jekyll site `_config.yaml`:
|
||||
|
||||
```yaml
|
||||
theme: jekyll-theme-isabelline
|
||||
```
|
||||
|
||||
Chances are if you're creating a site from scratch, `Gemfile` and `_config.yaml` will be referencing the theme "minima". Replace with desired theme (in this example `jekyll-theme-isabelline`).
|
||||
|
||||
Run `bundle`:
|
||||
|
||||
```sh
|
||||
docker run --rm -it \
|
||||
-v (PWD):/srv/jekyll \
|
||||
-v (PWD)/.bundle:/usr/local/bundle \
|
||||
-v (PWD)/.gem:/root/.gem \
|
||||
jekyll/jekyll:4 bundle
|
||||
```
|
||||
|
||||
At this point you're ready to run jekyll serve in local mode:
|
||||
|
||||
```sh
|
||||
docker run --rm -it -p 4000:4000 \
|
||||
-v (PWD):/srv/jekyll \
|
||||
-v (PWD)/.bundle:/usr/local/bundle \
|
||||
-v (PWD)/.gem:/root/.gem \
|
||||
jekyll/jekyll:4 \
|
||||
jekyll serve --host 0.0.0.0 --future --draft --force_polling --livereload
|
||||
```
|
||||
|
||||
## Download customized `.gitignore`, `index.html`, `_config.yaml` and `docker-compose.yaml`
|
||||
|
||||
Optionally backup your current files:
|
||||
|
||||
```sh
|
||||
mv _config.yml _config.yml.backup
|
||||
mv _config.yaml _config.yaml.backup
|
||||
mv index.html index.html.backup
|
||||
mv .gitignore .gitignore.backup
|
||||
```
|
||||
|
||||
Download the files:
|
||||
|
||||
```sh
|
||||
curl -o _config.yaml https://git.rzen.dev/rzen/jekyll-theme-isabelline/raw/branch/master/_config.yaml
|
||||
curl -o docker-compose.yaml https://git.rzen.dev/rzen/jekyll-theme-isabelline/raw/branch/master/docker-compose.yaml
|
||||
curl -o index.html https://git.rzen.dev/rzen/jekyll-theme-isabelline/raw/branch/master/index.html
|
||||
curl -o private.html https://git.rzen.dev/rzen/jekyll-theme-isabelline/raw/branch/master/private.html
|
||||
curl -o .gitignore https://git.rzen.dev/rzen/jekyll-theme-isabelline/raw/branch/master/.gitignore
|
||||
```
|
||||
|
||||
The `_config.yaml` references several gems that do not come pre-configured on `jekyll new`, make sure the following gems are declared in `Gemfile`:
|
||||
|
||||
```ruby
|
||||
group :jekyll_plugins do
|
||||
gem 'jekyll-tidy'
|
||||
gem 'jekyll-tagging'
|
||||
gem 'jekyll-mentions'
|
||||
gem 'jekyll-sitemap'
|
||||
gem 'jekyll-feed'
|
||||
gem 'jekyll-seo-tag'
|
||||
end
|
||||
```
|
||||
|
||||
## Create directories for posts, blogs and private notes
|
||||
|
||||
```sh
|
||||
mkdir _blog _pages _posts _drafts _private
|
||||
```
|
||||
|
||||
## Docker compose
|
||||
|
||||
For your convenience a docker-compose.yaml file is included. Run `jekyll serve` as follows:
|
||||
|
||||
```sh
|
||||
docker-compose up serve
|
||||
```
|
||||
|
||||
Additionally it can be used to run `jekyll`, `bundle` or `gem`. The service `gem-push` can be used to publish gems to [rubygems.org](https://rubygems.org).
|
||||
|
||||
<!--qed-->
|
Loading…
Reference in New Issue
Block a user