Skip to content

Commit

Permalink
Add Docker (daattali#114)
Browse files Browse the repository at this point in the history
* added docker

* link to docker install
  • Loading branch information
mangar authored and daattali committed Oct 9, 2016
1 parent 0cb0f5e commit d707d8a
Show file tree
Hide file tree
Showing 2 changed files with 56 additions and 10 deletions.
44 changes: 44 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
FROM mangar/jekyll:1.0

MAINTAINER Marcio Mangar "[email protected]"

RUN gem install jekyll -v 3.1.6
RUN gem install bundler

RUN gem install execjs
RUN gem install therubyracer
RUN gem install github-pages
RUN gem install jekyll-paginate
RUN gem install jekyll-seo-tag
RUN gem install jekyll-gist
RUN gem install json -v 1.8.3

RUN gem install minitest -v 5.9.0
RUN gem install colorator -v 0.1
RUN gem install ffi -v 1.9.10
RUN gem install kramdown -v 1.10.0
RUN gem install rouge -v 1.10.1
RUN gem install pkg-config -v 1.1.7
RUN gem install terminal-table -v 1.6.0
RUN gem install ethon -v 0.9.0
RUN gem install nokogiri -v 1.6.8
RUN gem install activesupport -v 4.2.6
RUN gem install html-pipeline -v 2.4.1
RUN gem install jekyll-watch -v 1.4.0
RUN gem install github-pages-health-check -v 1.1.0
RUN gem install jekyll-github-metadata -v 2.0.0
RUN gem install jekyll-mentions -v 1.1.2
RUN gem install jekyll-redirect-from -v 0.10.0
RUN gem install jemoji -v 0.6.2
RUN gem install github-pages -v 82



RUN mkdir -p /app
ADD ./ /app

WORKDIR /app

EXPOSE 4000

CMD bundle exec jekyll serve
22 changes: 12 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ Scroll down to see the steps involved, but here is a 40-second video just as a r

![Installation steps](img/install-steps.gif)

### 1. Fork this repository
### 1. Fork this repository

(Assuming you are on this page and logged into GitHub) Fork this repository by clicking the *Fork* button on the top right corner. Forking means that you now copied this whole project and all the files into your account.

Expand Down Expand Up @@ -153,7 +153,7 @@ To set up a GitHub Project page, simply fork this repository into a branch calle

### Advanced features (including how to use a custom URL address for your site)

I wrote [a blog post](http://deanattali.com/2015/03/12/beautiful-jekyll-how-to-build-a-site-in-minutes/) describing some more advanced features that I used in my website that are applicable to any Jekyll site. It describes how I used a custom URL for my site (deanattali.com instead of daattali.github.io), how to add a Google-powered search into your site, and provides a few more details about having an RSS feed.
I wrote [a blog post](http://deanattali.com/2015/03/12/beautiful-jekyll-how-to-build-a-site-in-minutes/) describing some more advanced features that I used in my website that are applicable to any Jekyll site. It describes how I used a custom URL for my site (deanattali.com instead of daattali.github.io), how to add a Google-powered search into your site, and provides a few more details about having an RSS feed.

### Featured users (success stories!)

Expand Down Expand Up @@ -190,19 +190,21 @@ Want your website featured here? [Contact me](http://deanattali.com/aboutme#cont
| [epwalsh.com](https://epwalsh.com) | Evan Pete Walsh | PhD candidate (Statistics and Mathematics) at Iowa State University |
| [otomatikmuhendis.com](http://otomatikmuhendis.com/) | Olcay Bayram | Software engineer |

### Very advanced: Local development

Beautiful Jekyll is meant to be so simple to use that you can do it all within the browser. However, if you'd like to develop locally on your own machine, that's possible too if you're comfortable with command line. Follow these simple steps to do that with Vagrant:
### Docker

1. Install [VirtualBox](http://virtualbox.org) and [Vagrant](https://www.vagrantup.com)
Beautiful Jekyll is meant to be so simple to use that you can do it all within the browser. However, if you'd like to develop locally on your own machine, that's possible too if you're comfortable with command line. Follow these simple steps to do that with Docker:

1. Make sure that you have Docker installed on your local environment. More details can be found [here](https://docs.docker.com/engine/installation/)
2. Clone your fork `git clone [email protected]:yourusername/yourusername.github.io.git`
3. Inside your repository folder, run `vagrant up`
4. View your website at `http://0.0.0.0:4000` on *nix or `http://127.0.0.1:4000` on Windows.
5. Commit any changes and push everything to the master branch of your GitHub repository. GitHub Pages will then rebuild and serve your website automatically.
3. Inside your repository folder, run:
```
docker run -p 4000:4000 -v `pwd`:/app mangar/jekyll:1.1 bash -c "bundle install; bundle exec jekyll serve"
```
4. View your website at <http://localhost:4000>.


Disclaimer: I personally am NOT using local development so I don't know much about running Jekyll locally. If you follow this route, please don't ask me questions because unfortunately I honestly won't be able to help!

Additionally, if you choose to deploy Jekyll using a local ruby installation, you can tell Jekyll to automatically categorize your blog posts by tags. You just need to set `link-tags: true` in `_config.yml`. Jekyll will then generate a new page for each unique tag which lists all of the posts that belong to that tag.

### Credits

Expand Down

0 comments on commit d707d8a

Please sign in to comment.